伪代码和算法之间的区别是什么?

时间:2014-06-02 13:17:45

标签: algorithm pseudocode

伪代码和算法有什么区别? 能给我举个例子?我试图在网上搜索,但我仍然对算法感到困惑。伪代码是用文字写的,我明白了。但我不理解算法。 alogrithm和代码之间有区别吗?

1 个答案:

答案 0 :(得分:4)

算法只是一系列没有固定表示的步骤。它可以用高级描述,伪代码或任何语言的代码来描述。

更一般地说,任何用任何语言编写的程序,任何伪代码或任何具体的步骤序列都可以被认为是算法。

伪代码没有固定的格式 - 它看起来非常类似于任何语言或语言组合,或者它可以简单地是算法的自然语言描述。


例如,insertion sort是一种算法。

高级描述是:

  

保留一个从空开始的排序列表。对于原始列表中的每个元素,将其插入到已排序列表中的正确位置。返回已排序的列表。

伪代码表示(根据维基百科)是:

for i ← 1 to length(A)
    x ← A[i]
    j ← i
    while j > 0 and A[j-1] > x
        A[j] ← A[j-1]
        j ← j - 1
    A[j] ← x

然后你也可以用Java,C ++,C或任何其他语言编写它。

这些都是插入排序算法的表示。

* - 有一些插入排序的变体,这些都可以被认为是算法,并且在上面的高级描述中存在一些模糊性(这可能会导致不同的变体),但是让我们看看暂时忽略这些方面。

相关问题