一, 算法之 二分查找

        上半年看了一点算法的内容, 做点笔记.

        算法是 一组完成任务的指令. (任何daim代码片段都可视为算法.)

        二分查找,其实我们生活中可能已经接触过,只不过不知道它的算法名称而已. 记得上学那会查英汉字典,但遇见一个不认识的单词的时候, 我们去查询英语单词时, 首先会根据英语单词的首字母,猜测它在字典的上半部分还是下半部分, 这么粗略的猜测, 其实就已经使用了二分查找.

        二分查找, 还有一个hend很典型的游戏场景. 一个人 甲 想一个1~100的数字, 另一个人 乙 一定可以在7步之内找到这个数字.

      具体步骤:

      1, 乙  猜 50 ,  甲 告知 50 是猜测的大了 还是 小了 .

      2, 小了,  排除了一半的数字,  乙 猜测 75, 甲 告知75 是猜测的大了 还是 小了

      3, 大了, 剩下的数字又排除一半, 每次都猜测的都是中间数字,从而每次都可以排除一半的数字. 接下来 乙猜测 63.

       .................不管猜测的shi是哪一个数字, 都会在7次之内猜测到,每次猜测都会排除很多数字.

    以上说明显示如果想要使用二分查找, 必须是一组有序的组合. 

     一般用大O表示法 讨论算法的运行时间. log n, 在算法中一般表示以2 为底. 

     二分查找查找法的 运行时间 表示为O(logn)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值