摘要: 二分查找图解 第一类: 查找等于目标值的数 比如我们有数组 [2, 4, 5, 6, 9],target = 6,那么我们可以写出二分查找法的代码如下: int find(vector<int> &nums, int target) { int left = 0, right = nums.size 阅读全文
posted @ 2018-06-07 20:51 苏格拉底的落泪 阅读(221) 评论(0) 推荐(0) 编辑
摘要: 预备知识 堆排序 堆排序是利用堆这种数据结构而设计的一种排序算法,堆排序是一种选择排序,它的最坏,最好,平均时间复杂度均为O(nlogn),它也是不稳定排序。首先简单了解下堆结构。 堆 堆是具有以下性质的完全二叉树:每个结点的值都大于或等于其左右孩子结点的值,称为大顶堆;或者每个结点的值都小于或等于 阅读全文
posted @ 2018-06-07 19:23 苏格拉底的落泪 阅读(131) 评论(0) 推荐(0) 编辑