Find 625 consecutive ones in vector

2 Ansichten (letzte 30 Tage)
Sam
Sam am 24 Mär. 2020
Bearbeitet: John D'Errico am 24 Mär. 2020
Hello,
I have a 45000x1 rowvector, which contains only 1's and 0's. I want to find the periods of 625 consecutive ones and locations of these 1's in this vector. Can anyone help?
Thank you.
  2 Kommentare
Sean de Wolski
Sean de Wolski am 24 Mär. 2020
Bearbeitet: Sean de Wolski am 24 Mär. 2020
Exactly 625 or >=625?
John D'Errico
John D'Errico am 24 Mär. 2020
Bearbeitet: John D'Errico am 24 Mär. 2020
As Sean points out, the difference might change how one solves the problem. Do you want to find ALL occurrences of exactly 625 ones? What if there is a string of length 626? Does that correspond to two sustrings of length 625, one starting one element further down the line? Or is that just one string, that happens to satisfy the goal? What if there was a string of length 1250? Is that two consecutive strings of length 625? Or is it 625 strings of length 625 that overlap, or is it just one string?

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Ameer Hamza
Ameer Hamza am 24 Mär. 2020
Bearbeitet: Ameer Hamza am 24 Mär. 2020
The following code will find 3 consecutive ones in an input array and output the starting index of each occurrence
x = [0 1 1 1 0 0 1 1 0 1 1 1 0 1];
index = strfind(x, [1 1 1]);
output
index =
2 10

Weitere Antworten (0)

Kategorien

Mehr zu Characters and Strings finden Sie in Help Center und File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by