首页 > 试题广场 >

对于二分搜索法,下面描述正确的是()

[不定项选择题]

对于二分搜索法,下面描述正确的是()

  • 可用于数组
  • 可用于单链表
  • 只能在已排序的数据上进行
  • 最坏情况下时间复杂度是O(N*LogN)

A C

  • 二分查找首先要求数据是有序的,同时要求能随机访问数据元素, 有序数组可以, 链表不行,

  • 二分查找因为每次都是从中间点开始查找,所以最坏情况是目标元素存在于最边缘的情况。最坏为O(LogN)

发表于 2017-01-04 00:18:57 回复(2)
AC
二分查找需要在已排序的数组上进行,需要能够通过下标直接索引到值,因此无法在链表上进行
每次可以排除一般的数字,复杂度O(logn)
发表于 2017-02-22 14:48:34 回复(0)
不是说折半查找可以用于链表嘛,只是不适合用链表,不是说不可以用链表,只是顺序表更加适合一点
发表于 2023-04-18 14:54:15 回复(0)
AC
二分查找首先要求数据是有序的,同时要求能随机访问数据元素,有序数组可以,链表不行
二分查找因为每次都是从中间点开始查找,所以最坏情况是目标元素存在于最边缘的情况。最坏为O(LogN)
发表于 2021-05-12 14:21:25 回复(0)
为什么不能用于单链表,有序的单链表找中间节点很简单呀
发表于 2020-07-30 09:07:03 回复(1)
二分法,明明在无序数组上也可以用啊(比如寻找峰值),为什么C对?
发表于 2020-07-12 14:50:50 回复(0)
完全看不懂
发表于 2020-05-27 22:23:08 回复(0)
二分查找可以在有序的数组上进行,但是不可以在链式结构上进行,二分查找法的复杂度为:O(log2(N))
发表于 2020-05-21 17:46:29 回复(0)
二分查找(搜索)必须是针对有序序列,链表是无序的,有序数组可以,;

查找的时候均从中间开始,所以最坏的情况都是在最边缘的地方找到目标,所以复杂度是:logn, 因为从折半查找的折半查找判定树可以看出,最边缘的数都是在判定树的叶子节点,所以查找次数即树的高度
编辑于 2018-07-28 21:51:35 回复(0)
二分搜索不能用于单链表,因为单链表是无序的,而二分搜索的前提就是已经排好序。 对单链表不太清楚的建议看一看数据结构。 时间复杂度是O(log2N)
发表于 2018-07-08 15:24:49 回复(1)
最坏最好情况均为O(logN)
发表于 2018-01-22 10:22:50 回复(0)