排序算法
文章平均质量分 55
hegang1314
天生我材必有用!
展开
-
计数排序(Counting-Sort)
计数排序的思想是在一个预排序的整数集中,统计每一个整数在这个整数集中小于等于本身的整数个数,这样的话,就得到了预排序整数集中每个数的在已排序集中的位置, 然后将预排序集与预排序集所处的位置对应起来,每次已排序一个,则将该计数减一(原因是存在相同的整数)。 例如:已知预排序集A={0,2,4,2,3,4},可知最大数为4,则可以申请空间为4的数组C和C'。 step1:统计每个数的个数原创 2012-11-15 15:51:22 · 940 阅读 · 1 评论 -
快速排序(Quick-Sort)
快速排序的主要思想是根据一个基准数(一般是待排序集中第一个元素)将一个待排序集分成左右两部分,其中左半部分数据集比右半部分数据集均要小或大,接下来,对左和右半部分按照相同的方法分别再划分成左右两部分,一直到左右两部分只剩下一个元素时,递归结束。 分析:快速排序的时间复杂度为o(nlogn),空间复杂度为o(1),该算法是一个不稳定的排序算法(当基准元素与相同值进行交换时会破坏稳定性)。 附源程原创 2012-11-24 10:40:02 · 495 阅读 · 0 评论