摘要: 首先我们先来看一个由普通数组构建的普通堆。 然后我们通过前面的方法对它进行堆化(heapify),将其构建为最大堆。 结果是这样的: 对于我们所关心的这个数组而言,数组中的元素位置发生了改变。正是因为这些元素的位置发生了改变,我们才能将其构建为最大堆。 可是由于数组中元素位置的改变,我们将面临着几个 阅读全文
posted @ 2018-03-15 17:16 小杜同学的嘚啵嘚 阅读(3520) 评论(1) 推荐(0) 编辑
摘要: 对于时间复杂度来说,快速排序的速度比较快。 一般系统级别的排序都是使用快速排序。对于有可能出现大量重复元素的情况,我们可以使用三路的快速排序。 归并排序必须开辟额外的空间完成归并的过程,才能完成归并排序。 快速排序虽然是在原地完成的排序,但它仍然需要log2n个额外空间。 这是因为我们在使用递归的方 阅读全文
posted @ 2018-03-15 16:13 小杜同学的嘚啵嘚 阅读(584) 评论(0) 推荐(0) 编辑