2. 大O表示法
一种特殊的表示法,指算法速度。
大O表示法可以比较操作数,指出了算法运行时间的增速。
O(n):O--》大O,n--》操作数
2.2 常见的大O运行时间:
O(log n):对数时间,如二分查找
O(n):线性时间,如简单查找
O(n²):如选择排序
O(n!):阶乘时间,一种非常慢的算法
绘制网格所需时间:
2.3 启示:
1.算法的速度:操作数的增速
2.谈论算法的速度时,通常是指随着输入的增加,其运行时间将以什么样的速度增加。
3.算法的运行时间用大O表示法表示
4.O(log n)比O(n)快的多。当需要搜索的元素越多,O(log n)越快
2.4 旅商问题
一位旅行商,要前往5个城市,同时要确保旅程最短。
5个城市要执行120次操作,6个城市要执行720次。
O(n!):阶乘时间,一种非常慢的算法