摘要: 八、Hash应用例子搜索引擎会通过日志文件把用户每次检索使用的所有检索串都记录下来,每个查询串的长度为1-255字节。假设目前有一千万个记录(这些查询串的重复度比较高,虽然总数是1千万,但如果除去重复后,不超过3百万个。一个查询串的重复度越高,说明查询它的用户越多,也就是越热门。),请你统计最热门的 阅读全文
posted @ 2018-03-17 16:34 Curo 阅读(199) 评论(0) 推荐(0) 编辑
摘要: 基础的二分查找: 二分查找变形 随着二分查找的进行,如果找到key并不结束循环的话,最终的结束状态会是right < left,并且right + 1 = left。 当数组中存在key时,根据二分区间选择的不同,这里又分为两种情况,如下图(key为2时), 当数组中不存在key时,最后仅有一种情况 阅读全文
posted @ 2018-03-17 14:17 Curo 阅读(664) 评论(0) 推荐(0) 编辑
摘要: 我们在上一篇已经谈到了快速排序的基本理解,见http://www.cnblogs.com/curo0119/p/8588565.html,接下来我们来更深入的了解一下快排的优化。 1、快速排序的基本思想: 快速排序使用分治的思想,通过一趟排序将待排序列分割成两部分,其中一部分记录的关键字均比另一部分 阅读全文
posted @ 2018-03-17 13:42 Curo 阅读(477) 评论(0) 推荐(0) 编辑
摘要: 快速排序算法是基于分治策略的另一个排序算法。 该方法的基本思想是: 1.先从数列中取出一个数作为基准数,记为x。 2.分区过程,将不小于x的数全放到它的右边,不大于x的数全放到它的左边。(这样key的位置左边的没有大于key的,右边的没有小于key的,只需对左右区间排序即可) 3.再对左右区间重复第 阅读全文
posted @ 2018-03-17 11:37 Curo 阅读(2057) 评论(1) 推荐(1) 编辑