輸入:任給一條直線L及其上一點A
輸出:經(jīng)過A做L的一條垂線
算法(2000 B.C.舍咖,古埃及人)
取12段等長的繩索,收尾聯(lián)接城環(huán)
從A點起嵌溢,將4段繩索沿L抻直并固定于B沿另一方向找到 第三段繩索的終點C 移動點C恋谭,將剩余的3+5段繩索抻直
這里的計算機就是12段等長的繩索
任給平面上線段AB(輸入)
將其三等分(輸出)
算法:
從A出發(fā)一條不與ab重合的平行射線m
經(jīng)C'做B'B的平行線扩灯,交ab與c
在M 上取ac'=c'd'=d'b'
連接b'b
經(jīng)D'做B'B的平行線,交AB于D
子程序:做平行線
計算=信息處理
借助某種工具,遵照一定規(guī)則霜瘪,以明確而機械的形式進行
計算模型=計算機=信息處理工具
所謂算法珠插,即特定計算模型下,皆在解決特定問題的指令序列
1 | 1 |
---|---|
輸入 | 待處理的信息(問題) |
輸出 | 經(jīng)處理的信息(答案) |
正確性 | 的確可以解決指定的問題 |
確定性 | 任一算法都可以描述為一個由基本操作組成的序列 |
可行性 | 每一基本操作都可實現(xiàn)颖对,且在常數(shù)時間內(nèi)完成 |
有窮行 | 對于任何輸入捻撑,經(jīng)有窮次基本操作,都可以得到輸出 |