我一直在 Coursera 上学习 DSA 课程,本周介绍了搜索算法。而二分查找的复杂度(O(logn))优于线性查找(O(n))。但是,考虑到首先需要 nlogn 工作才能对数组进行排序,为什么我要在未排序的数组中使用它呢?
如果二分搜索仅在数组已排序的情况下使用,那么为什么要如此频繁地比较这两种算法,因为显然它们有不同的用例。
sorting algorithm binary-search linear-search
algorithm ×1
binary-search ×1
linear-search ×1
sorting ×1