1 | for Start ← 1 to Total Number Of Probes do |
---|---|
2 | SetArrays_A ← ϕ; |
3 | for array ← 1 to Total Number Of Arrays do |
4 | if P(S Start = 1|array) ≥ p w then |
5 | SetArrays_A ← SetArrays_A ∪ array; |
6 | end |
7 | end |
8 | if |SetArrays_A| ≥ freq.arrays then |
9 | End ← Start + 1; |
10 | while End ≤ Total Number Of Probes do |
11 | SetArrays_B ← ϕ; |
12 | foreach candidate array in SetArrays_A do |
13 | if P(S Start ,..., S End = 1|candidate_array) ≥ p w then |
14 | SetArrays_B ← SetArrays_B ∪ candidate_array; |
15 | end |
16 | end |
17 | if |SetArrays_B| <freq.arrays then |
18 | break out of the while loop |
19 | else |
20 | if |SetArrays_B| < |SetArrays_A| then |
21 | UpdateRegionS(Start, End - 1, SetArrays_A); |
22 | SetArrays_A ← SetArrays_B; |
23 | end |
24 | End ← End + 1; |
25 | end |
26 | end |
27 | UpdateRegionS(Start, End - 1, SetArrays_A); |
28 | end |
29 | end |