Fork me on GitHub
摘要: 一,基数排序基本思想: 按最低位优先法先对低位关键字进行排序,直到对最高位关键字排序为止,经过若干次分配和收集来实现排序基数排序中用到了箱排序,每个箱子都是先进先出,因此采用队列是最合理的数据结构。如下图: 开始采用顺序表的存储结构,每次分派10个Length长的队... 阅读全文
posted @ 2011-10-05 19:29 浪飞-louffy 阅读(394) 评论(0) 推荐(0)
摘要: 基本思想:在堆排序的算法中先建一个大顶堆,既先选得一个关键字作为最大的记录并与序列中最后一个记录交换,然后对序列中前N-1记录进行选择,重新将它调整成一个大顶堆,如此反复直到排序结束。 #include const int Length = 10; //堆大小void... 阅读全文
posted @ 2011-10-05 19:18 浪飞-louffy 阅读(89) 评论(0) 推荐(0)
摘要: 快速排序基本思想:挖坑填数+分治法快速排序的分治partition过程有两种方法,一种是上面所述的两个指针索引一前一后逐步向后扫描的方法(算法导论上采用的是这种方法),还有一种方法是两个指针从首位向中间扫描的方法(大多数的人和一般的教材采用的是这第二种首尾向中间扫描法... 阅读全文
posted @ 2011-10-05 18:59 浪飞-louffy 阅读(102) 评论(0) 推荐(0)
摘要: 基本思想:设置第一个为哨岗,后面一个比较,如果小,大的后移,如果大,插在后面,然后再取下一个,再往序列里插,后往前比较//直接插入排序算法的实现 //本算法是在参照严蔚敏教材的基础上,为实际运行需要加以改进 //为了学习需要,我们直接对整数数组进行排序操作,实际稍加修改可用于其它数据结构 #include<stdio.h> #define Length 10 //函数声明,函数实现在程序末部分 void DirectInsertSort(int*,int); void main() { int L[Length]; int i; printf("请分别输入%d个整数:\n 阅读全文
posted @ 2011-10-05 18:38 浪飞-louffy 阅读(165) 评论(0) 推荐(0)
摘要: 基本思想:设置第一个为哨岗,后面一个比较,如果小,大的后移,如果大,插在后面,然后再取下一个,再往序列里插,后往前比较//直接插入排序算法的实现//本算法是在参照严蔚敏教材的基础上,为实际运行需要加以改进//为了学习需要,我们直接对整数数组进行排序操作,实际稍加修改可... 阅读全文
posted @ 2011-10-05 18:38 浪飞-louffy 阅读(130) 评论(0) 推荐(0)