![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法复习
alfred0830
这个作者很懒,什么都没留下…
展开
-
算法复习(1) 堆排序
堆是一种完全二叉树结构,以数组储存堆的最后一层从左开始填充对于元素个数为n的堆来说,高度为 floor(lgn)对于给定下标i (从0开始),父节点,左儿子,右儿子分别为:PARENT(i) return (i-1)>>1 LEFT(i) return 2i+1 RIGHT(i) return 2i+2堆排序主体为3个函数: Heapify、BuildHeap、Sort原创 2015-04-11 21:51:25 · 255 阅读 · 0 评论 -
算法复习(2) 快速排序
关于快速排序,一般都认为是通常情况下性能最好的,也确实是。因此对其的讨论都是在于如何能够使它更快。因此看一下快排的一般版本和随机版本。//一般版本 int Partition(int* arr, int start, int end) { int x = arr[end]; int i = start - 1; for(int j = start; j < end; ++j)原创 2015-04-13 00:24:59 · 334 阅读 · 0 评论