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
|