Tag Archives: 快速排序

C语言如何对包含一千万不重复整数的文件进行排序

《编程珠玑》中有着样一题:
限制使用内存 1M
磁盘大小不限
输入为一个文件,此文件包含最多n个正整数,每个数都小于 n,n=10000000 ,所有的正整数不重复
要求对文件输入的整数进行升序排序

常规解法是分块排序,这种解法易懂,也容易实现,实现步骤为,
将 1-10000000[……]阅读全文

快速排序 quicksort

快速排序是一种采用分治法的比较排序算法。
一般分为三个步骤完成:
一、分解:将数组 A[p..r] 分解为两个(可能为空)子数组 A[p..q – 1] 和
A[q + 1..r],使得 A[p..q – 1] 中的每个元素都小于等于 A[q],而且,
A[q + 1..r] 中的每个元素都[……]阅读全文