我不是来自cs背景,我试图理解用于什么的东西。在伪代码中,我看到了很多这样的内容:
for i <--- 1 to n-1 do
j <--- find-Min(A,i,n)
A[j] <-> A[i]
end for
<---
和<->
过去是指什么?
答案 0 :(得分:9)
<---
表示“将右侧分配到左侧”(在for
情况下看到这种情况有点奇怪,因为它可能很容易被忽略)
<->
表示“交换”。 A [j]值与A [i]交换。
修改强>:
我刚想到第一行可能缺少i
,而应该改为:
for i <--- 1 to n-1 do
这成为上述<---
的合法用例:i
按顺序分配从1
到n-1
的值,以及循环体(低至{{1}对于这些end for
值中的每一个,都会执行,表示循环结束。
答案 1 :(得分:3)
关于伪代码中使用的符号,没有任何接近普遍的协议。
在这种情况下,我猜测<---
表示&#34;将右侧分配到左侧&#34;,<->
表示交换右侧&#34}左侧。&#34;
然而,在第一种情况下,我认为你错过了一个角色。它可能应该是:
for i <--- 1 to n-1 do
所以它是一个正常的for
循环,写成:
for i = 1 to n-1
在BASIC中,或者:
for (i=1; i<n; i++)
用类C语言。
答案 2 :(得分:1)
用于表明变量接收新值,例如
for i <- 1 to n-1 do
我已经看到了这个:
也用于使操作以符号方式显而易见。
我现在想不出任何伪代码。