伪代码中令人困惑的 For 循环语句

时间:2021-07-27 05:04:41

标签: for-loop pseudocode

我正在阅读伪代码,我发现了这个:

for j <- 0 to j <= |B| do
    for k <- j+1 to k <= |B| do
        If IntersectsWith(B[j],B[k]) then
             foreach c in B[j].flocks do
                   C <- insertFlock(C,c)
        else
            break
    endfor
endfor

声明|B|是一个集合的基数,例如,如果我设置了 B={a,b}, |B|将是 2。

根据示例伪代码,索引 (j) 将为 0,1,2。索引 0 映射到元素 'a',索引 1 映射到元素 'b',但索引 2 不能映射到任何地方,因为集合中只有两个元素,所以 j 的值似乎超出了集合。

谁能解释为什么伪代码会这样做,或者我的理解是否不正确?

更新

这个伪代码可以在这篇文章 https://periodicos.ufmg.br/index.php/jidm/article/view/327 上找到,关于算法 2

0 个答案:

没有答案