【算法模块刷题3.2】

无序列表的查找
在一个有8个int数据的数组中,随机给出数组的数据,找出最大和第二大元素一定需要进行(9)次比较:
在这里插入图片描述

  • 分块查找
    分块查找表,块间有序,块内无序。是二分查找和顺序查找的一种改进方法。

  • 二分查找【要求能够随机访问数组元素】
    对顺序表进行二分查找,需要是有序的顺序表。【顺序表只是说明数据存储是有序的,但是并不代表存储的值是有序的。】
    有序数组1 2 3 4 5 6 7 8 9查找3的二分查找序列是:5->2->3 【中间下标的计算:(0+3)/2=1,为2的下标】
    二分查找,可以用二叉判定树,查找不成功的次数不超过判定树的深度,而树的深度为|log2n|+1
    二分查找首先要求数据是有序的,同时要求能随机访问数组元素, 有序数组可以, 链表不行,
    二分查找因为每次都是从中间点开始查找,所以最坏情况是目标元素存在于最边缘的情况。最坏为O(LogN)
    使用二分查找,表必须有序,且表只能以顺序方式存储

折半查找

顺序查找

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值