计算的定义:
可由一个给定的计算模型机械地执行的规则或计算步骤序列成为该计算模型的一个计算.
注意:
- 计算模型是计算机
- 一个计算机程序是一个计算
- 计算可能永远不会停止(不等同于算法)
算法的定义:(满足一下条件)
- 终止性:有限步骤内必须停止
- 确定性:每个步骤都是严格定义和确定的
- 能行性:每个动作都能被精确地机械执行
- 输入:具有满足约束条件的输入
- 输出:产生满足约束条件的输出
问题的定义:
设Input和Output是两个集合.一个问题是一个关系,Input成为问题P的输入集合,Input的每个元素称为P的一个输入,Output称为问题P的输出或者结果集合,Output的每个元素称为P的一个结果.
问题实例的定义:
问题P的一个实例是P中的一个二元组.
算法正确性的定义:
如果一个算法对每个输入都最终停止,而且产生正确的输出.那么这个算法就是对的.