《算法图解》读书笔记

第一章

大O表示法

大O表示法是一种特殊的表示法,指出了算法的速度有多快,但通常情况下大O表示法指的是最糟情况下的运行时间。

大O表示法指的并非以秒为单位的速度,而是从其增速的角度度量的。

讨论运行时间时,log指的都是 log2

一些常见的大O运行时间

  • O(log n),也叫对数时间,常见算法包括二分查找。
  • O(n),也叫线性时间,常见算法包括简单查找。
  • O(n * log n),常见算法比如速度比较快的快速排序。
  • O(n^2),常见算法包括选择排序。
  • O(n!),常见算法包括旅行商问题。

二分查找法

仅当列表是有序的时候,二分查找才管用。

一般而言,对于包含n个元素的列表,用二分查找最多需要 log2n 次操作,而简单查找最多需要 n 步。使用大O表示法,则表示为 O(log n)

Java实现二分查找法代码

待续更新中...争取每日更新一章...

猜你喜欢

转载自www.cnblogs.com/smallmin/p/10719989.html