摘要:
13.2:堆排序 基于比较的排序时间复杂度O(N * logN)是最好的了 理解了堆以及堆里面的heapInsert() 和heapify(),堆排序就简单了。 1、把数组中的所有数都调成大根堆。heapSize = N。 2、0位置的数和N-1位置的数进行交换。heapSize = N - 1。 阅读全文
posted @ 2022-05-16 19:31
yzmarcus
阅读(29)
评论(0)
推荐(0)
摘要:
13.1:堆的heapify下沉过程 现在的要求是: 此时在大根堆上,将最大的数max返回,剩下的数自动按照大根堆的要求重新建成新的大根堆? 操作思路: [ 8 7 0 1 6 ] 下标: 0 1 2 3 4 我们知道大根堆上最大值一定在index = 0位置上,所以给用户直接返回max = 8没问 阅读全文
posted @ 2022-05-16 11:26
yzmarcus
阅读(58)
评论(0)
推荐(0)
摘要:
13:堆结构heap (priority queue)重要结构 之 上移过程heapInsert() 1、堆结构就是用数组实现的完全二叉树结构; 2、完全二叉树中如果每棵树(包括子数) 的最大值都在顶部 是 大根堆; 3、完全二叉树中如果每棵树(包括子数) 的最小值都在顶部 是 小根堆; 4、堆结构 阅读全文
posted @ 2022-05-16 10:36
yzmarcus
阅读(86)
评论(0)
推荐(0)
摘要:
12:比较器 1、比较器的实质是重载比较运算符; 2、比较器可以很好的应用在特殊标准的排序上; 3、比较器可以很好的应用在根据特殊标准的结构上; 4、写代码异常容易,还用于泛型编程; 1 public static class Student { 2 public String name; 3 pu 阅读全文
posted @ 2022-05-16 09:13
yzmarcus
阅读(144)
评论(0)
推荐(0)

浙公网安备 33010602011771号