输入:任给一条直线L及其上一点A
输出:经过A做L的一条垂线
算法(2000 B.C.,古埃及人)
取12段等长的绳索,收尾联接城环
image.png
从A点起,将4段绳索沿L抻直并固定于B沿另一方向找到 第三段绳索的终点C 移动点C,将剩余的3+5段绳索抻直
image.png
这里的计算机就是12段等长的绳索
任给平面上线段AB(输入)
将其三等分(输出)
算法:
从A出发一条不与ab重合的平行射线m
经C'做B'B的平行线,交ab与c image.png
在M 上取ac'=c'd'=d'b'
连接b'b
经D'做B'B的平行线,交AB于D
子程序:做平行线
计算=信息处理
借助某种工具,遵照一定规则,以明确而机械的形式进行
计算模型=计算机=信息处理工具
所谓算法,即特定计算模型下,皆在解决特定问题的指令序列
1 | 1 |
---|---|
输入 | 待处理的信息(问题) |
输出 | 经处理的信息(答案) |
正确性 | 的确可以解决指定的问题 |
确定性 | 任一算法都可以描述为一个由基本操作组成的序列 |
可行性 | 每一基本操作都可实现,且在常数时间内完成 |
有穷行 | 对于任何输入,经有穷次基本操作,都可以得到输出 |
网友评论