一、算法中解決問題的步驟是明確且有限的
二、計算機不是靠直覺而是機械地解決問題
// common-divisor.js 最大公約數(shù) (輾轉(zhuǎn)相除法或歐幾里得算法)
let a = 12;
let b = 42;
while(a !== b){
if (a < b) {
b = b - a
} else if (a > b) {
a = a - b
}
}
console.log('the common divisor is ' + a)
三、了解并應(yīng)用典型算法
| 名稱 | 用途 |
|---|---|
| 輾轉(zhuǎn)相除法 | 求最大公約數(shù) |
| 埃拉托斯特尼篩法 | 判定素數(shù) |
| 順序查找 | 檢索數(shù)據(jù) |
| 二分查找 | 檢索數(shù)據(jù) |
| 哈希查找 | 檢索數(shù)據(jù) |
| 冒泡排序 | 檢索數(shù)據(jù) |
| 快速排序 | 檢索數(shù)據(jù) |
四、利用計算機的處理速度
五、使用編程技巧提升程序執(zhí)行速度
例如:“哨兵”