一 前言
如果对本系列产生什么疑问的话, 建议先下前言, 里面有我的联系方式, 教材的下载地址, 特殊词语的规定之类的........ 链接地址: https://blog.csdn.net/qq_41057280/article/details/89209081 ; 最后, 以下说法仅为个人理解, 如有错误, 欢迎教正
二 定义
这里以<<算法导论>>的定义为准, 毕竟它里面的所有算法都是用伪代码写的, 具体定义如下:
伪代码 采用任何表达方法以最清晰简洁的方式来描述给定的算法。 有时候甚至会把说明嵌入“真实”代码,充当句子。 伪代码和实际代码之间的另一个区别是伪代码通常不关心软件工程的问题, 即忽略数据抽象,模块化和错误处理的问题. 以便更简洁地传达算法的本质。
简单的说, 伪代码就是代码的说明, 只用于描述代码的逻辑或执行过程, 不涉及具体实现
三 规定
- 缩进表示块结构
- while, for, repeat-until等循环结构和C, java, C++中的循环结构用法类似. 不同的是, 在退出循环时, 保存索引.
- "//" 表示该行为注释
- 形如i=j=e的多重赋值, 代表将e的值分别赋给 i, j. 具体执行为: j = e; i = j
- 无显示定义时, 变量皆为局部
- 数组元素通过下标访问 array[i]
- 复合对象访问对象元素, 对象名后跟一个点再跟属性名如 obj.field
- 引用传递时, 隐性复制该引用, 即引用传递可能会修改原始对象的具体值
- return语句, 可以返回到调用该过程的调用点, 也可以返回值(允许多个)
- 对象为空, 用NIL表示
- 布尔运算符, and, or
- error表示报错, 具体细节可以不用理会