伪代码(英語:pseudocode),又称为虚拟代码,是一种高层次描述算法的方法。它不是现实存在的编程语言(已经出现了类似伪代码的语言,参见Nuva);它可能综合使用多种编程语言的语法、保留字,甚至会用到自然语言。
它以编程语言的书写形式指明算法的职能。相比于程序语言(例如Java、C++、C、Delphi 等等)它更类似自然语言。它是半形式化、不标准的语言。我们可以将整个算法运行过程的结构用接近自然语言的形式(这里可以使用任何一种作者熟悉的文字,例如中文、英文,重点是将程序的意思表达出来)描述出来。使用伪代码,可以帮助我们更好地表述算法,不用拘泥于具体的实现。
人们在用不同的编程语言实现同一个算法时意识到,他们做出来的实现(而非功能)很不同。程序员要理解一个用他們并不熟悉的编程语言编写的程序,可能是很困难的,因为程序语言的形式限制了程序员对程序关键部分的理解,而伪代码可以用于帮助人们理解解释代码的语法、规则、内涵和结构。于是伪代码就这样应运而生了。
当考虑算法功能(而不是其语言实现)时,伪代码常常得到应用。计算机科学在教学中通常使用伪代码,以帮助学习者能够快速并透彻地理解。
常見數學符號
操作類型 |
符號 |
範例
|
分配 |
← or := |
c ← 2πr , c := 2πr
|
比較 |
=, ≠, <, >, ≤, ≥ |
|
算術 |
+, −, ×, /, mod |
|
上界/下界 |
⌊, ⌋, ⌈, ⌉ |
a ← ⌊b⌋ + ⌈c⌉
|
邏輯
|
and, or
|
|
總和、乘積
|
∑ ∏
|
h ← ∑a∈A 1/a
|
参见