摘要: 一、桶排序 void Bucket_Sort(ElementType A[], int N) { count[]初始化; while(读入1个学生成绩grade) 将该生插入count[grade]链表; for(i=0;i<M;i++) { if(count[i]) 输出整个count[i]链表; 阅读全文
posted @ 2018-05-11 17:09 习惯就好233 阅读(124) 评论(0) 推荐(0) 编辑
摘要: 一、表排序 定义一个指针数组作为“表”(table) 如果仅要求按顺序输出,则输出: A[table[0]], A[table[1]] , ....., A[table[N-1]] N个数字的排列由若干个独立的环组成 Temp = f 如何判断一个环结束? if(table[i] = i) 二、复杂 阅读全文
posted @ 2018-05-11 16:54 习惯就好233 阅读(140) 评论(0) 推荐(0) 编辑
摘要: 一、分而治之 什么十快速排序算法的最好情况? 每次正好中分:T(N) = O(NlogN) void Quicksort(ElementType A[], int N) { pivot = 从A[]中选一个主元; 将S = { A[] \ pivot } 分成2个独立子集: A1 = { a属于S 阅读全文
posted @ 2018-05-11 16:16 习惯就好233 阅读(140) 评论(0) 推荐(0) 编辑
摘要: According to Wikipedia: Insertion sort iterates, consuming one input element each repetition, and growing a sorted output list. Each iteration, insert 阅读全文
posted @ 2018-05-11 15:30 习惯就好233 阅读(169) 评论(0) 推荐(0) 编辑
摘要: According to Wikipedia: Insertion sort iterates, consuming one input element each repetition, and growing a sorted output list. Each iteration, insert 阅读全文
posted @ 2018-05-11 11:11 习惯就好233 阅读(486) 评论(0) 推荐(0) 编辑
摘要: 一、归并排序 核心:有序子列的归并 如果两个子列一共有N个元素,则归并的时间复杂度是? T(N) = O(N) 二、递归算法 分而治之 T(N)=T(N/2)+T(N/2)+O(N) T(N)=O(NlogN) 统一函数接口 如果只在Merge中声明临时数组 void Merge(ElementTy 阅读全文
posted @ 2018-05-11 09:30 习惯就好233 阅读(242) 评论(0) 推荐(0) 编辑