把一列元素拦腰一截,再拦腰一截,再拦腰一截……
这个就是二分查找咯~
Python代码来一发——
第一种方法好像比较聪明 但是第二种方法更简单 第一种方法叫做简单查找,第二种方法叫做递归。 在编程中,递归非常常见,事实上,很多算法都用到了递归思想。 不过呢,也有人觉得递归很麻烦。 你怎么看? 简单查找是这样的——
递归是这样的——
我才不会告诉你们,这些连环画一样的算法解析都出自好玩又涨知识的《算法图解》呢。
我才不会告诉你们,这书零基础看了开心入门,程序员看了神清气爽呢。
我才不会告诉你们,大O表示法、数组、链表、散列动态规划都被这本书变成了萌物呢。
我才不会告诉你们,动态规划、图算法、K临近算法、狄克斯特拉算法在这本书里一点也不高冷呢。
我才不会告诉你们,这本书不只有图,还收录了Python代码示例,还有附有详细的代码讲解呢。
尤其要保密的就是这书的封面,嗯,这本书绝对不长下面这样……
作者: Aditya Bhargava
译者:袁国忠
《算法图解》的目录
算法简介 第1章
选择排序 第2章
递归 第3章
快速排序 第4章
散列表 第5章
广度优先搜索 第6章
狄克斯特拉算法 第7章
贪婪算法 第8章
动态规划 第9章
K最近邻算法 第10章
接下来如何做 第11章
或者点击链接:https://h5.youzan.com/v2/goods/3eo3wj3awryvz
用Java的,请看:
《算法(第4版)》
https://h5.youzan.com/v2/goods/2x49qb8r76hhr
用C语言的,请看:
《啊哈!算法》
https://h5.youzan.com/v2/goods/36csya8ej7xrz
用C/C++的,请看:
《挑战程序设计竞赛》
https://h5.youzan.com/v2/goods/3epcxtgu9ujvj
《算法的乐趣》
https://h5.youzan.com/v2/goods/26wpisl0dgctr
语言已经不是事儿了的,请看:
《算法新解》