复习
沉默....后....的...爆发.
它是站在海岸遥望海中已经看得见桅杆尖头了的一只航船,它是立于高山之巅远看东方已见光芒四射喷薄欲出的一轮朝日...
展开
-
希尔排序(复习)
因此必须执行O(N^2)的交换次数,这就是为啥冒泡、插入等算法只能到平方级别的原因,容易看出排序的本质就是消除逆序数,可以证明对于随机数组,逆序数是O(N^2)的,假设我们要从小到大排序,一个数组中取两个元素如果前面比后面大,则为一个逆序,而如果采用“交换相邻元素”的办法来消除逆序,每次正好只消除一个,反过来,基于交换元素的排序要想突破这个下界,必须执行一些比较,交换相隔比较远的元素,使得一次交换能消除一个以上的逆序,希尔能突破O(N^2)的界,可以用逆序数来理解,原创 2023-03-28 20:59:26 · 75 阅读 · 0 评论 -
堆排序(复习)
堆排序所用二叉树为完全二叉树,用数组存储即可,存储效率是很高的,没有空间浪费。原创 2023-03-27 21:47:16 · 40 阅读 · 0 评论