数据结构源码笔记(C语言):快速排序
//实现快速排序算法
#include<stdio.h>
#include<malloc.h>
#define MAXE 20typedef int KeyType;
typedef char InfoType;typedef struct
{KeyType key;InfoType data[10];
}RecType;void quickSort(RecType r[],int s,int t)//按递增有序进行直接插入排序
{int i=s,j=t,k;RecType temp;if(s<t){temp=r[s];while(i!=j){while(j>i && r[j].key>temp.key)j--;if(i<j){r[i]=r[j];i++;}while(i<j && r[i].key<temp.key)i++;if(i<j){r[j]=r[i];j--;}}r[i]=temp;printf(" ");for(k=0;k<10;k++)if(k==i)printf("[%d]",r[k].key);elseprintf("%6d",r[k].key);printf("\n");quickSort(r,s,i-1);quickSort(r,i+1,t);}
}int main()
{int i,k,n;KeyType a[]={6,8,7,9,0,1,2,3,4,5};n=sizeof(a)/4;RecType r[MAXE];for(i=0;i<n;i++) r[i].key=a[i];printf("\n");printf("初始关键词:");for(k=0;k<n;k++)printf("%4d",r[k].key);printf("\n");printf("\n排序过程:\n");quickSort(r,0,n-1);printf("\n最后结果:"); for(k=0;k<n;k++)printf("%4d",r[k].key);printf("\n\n");return 0;
}
数据结构源码笔记(C语言描述)汇总:
数据结构源码笔记(C语言):英文单词按字典序排序的基数排序
数据结构源码笔记(C语言):直接插入排序
数据结构源码笔记(C语言):直接选择排序
数据结构源码笔记(C语言):置换-选择算法
数据结构源码笔记(C语言):Huffman树字符编码
数据结构源码笔记(C语言):Josephus问题之顺序表
数据结构源码笔记(C语言):Josephus问题之循环链接表
数据结构源码笔记(C语言):多项式合并
数据结构源码笔记(C语言):二叉树之叶子结点旋转销毁
数据结构源码笔记(C语言):哈夫曼树
数据结构源码笔记(C语言):集合的位向量表示
数据结构源码笔记(C语言):链接队列
数据结构源码笔记(C语言):链接栈
数据结构源码笔记(C语言):线性表的单链表示
数据结构源码笔记(C语言):线性表的顺序表示
数据结构源码笔记(C语言):栈的基本操作
数据结构源码笔记(C语言):中缀表达式
数据结构源码笔记(C语言):希尔插入排序
数据结构源码笔记(C语言):索引文件建立和查找
数据结构源码笔记(C语言):冒泡排序
数据结构源码笔记(C语言):快速排序
数据结构源码笔记(C语言):可变长度字符串的快速排序
数据结构源码笔记(C语言):基数排序
数据结构源码笔记(C语言):二路归并排序
数据结构源码笔记(C语言):堆排序
数据结构源码笔记(C语言):二叉树搜索树Kruskal
数据结构源码笔记(C语言):二叉搜索树Prim
数据结构源码笔记(C语言):最短路径弗洛伊德算法
数据结构源码笔记(C语言):深度、广度优先生成树
数据结构源码笔记(C语言):邻接矩阵转化邻接表
数据结构源码笔记(C语言):统计字符串中出现的字符及其次数
数据结构源码笔记(C语言):顺序查找
数据结构源码笔记(C语言):哈希表的相关运算算法
数据结构源码笔记(C语言):分块法查找
数据结构源码笔记(C语言):二分查找
数据结构源码笔记(C语言):二叉树遍历
数据结构源码笔记(C语言):二叉平衡树的相关操作算法
数据结构源码笔记(C语言):二叉排序树的基本操作算法
数据结构源码笔记(C语言):B树的相关运算算法
数据结构源码笔记(C语言):快速排序相关推荐
- 数据结构源码笔记(C语言):可变长度字符串的快速排序
//实现可变长度的字符串序列快速排序算法#include<stdio.h> #include<malloc.h> #include<string.h>#define ...
- 数据结构源码笔记(C语言描述)汇总
数据结构源码笔记(C语言):英文单词按字典序排序的基数排序 数据结构源码笔记(C语言):直接插入排序 数据结构源码笔记(C语言):直接选择排序 数据结构源码笔记(C语言):置换-选择算法 数据结构源码 ...
- 数据结构源码笔记(C语言):英文单词按字典序排序的基数排序
//实现英文单词按字典序排序的基数排序算法#include<stdio.h> #include<malloc.h> #include<string.h>#defin ...
- 数据结构源码笔记(C语言):索引文件建立和查找
//实现索引文件建立和查找算法#include<stdio.h> #include<malloc.h> #include<string.h> #include< ...
- 数据结构源码笔记(C语言):冒泡排序
//冒泡排序算法实现 #include<stdio.h> #include<malloc.h> #define MAXE 20typedef int KeyType; type ...
- 数据结构源码笔记(C语言):希尔插入排序
//实现希尔插入排序算法 #include<stdio.h> #include<malloc.h> #define MAXE 20typedef int KeyType; ty ...
- 数据结构源码笔记(C语言):直接插入排序
//实现直接插入排序算法#include<stdio.h> #include<malloc.h> #define MAXE 20typedef int KeyType; typ ...
- 数据结构源码笔记(C语言):直接选择排序
//实现直接选择排序算法#include<stdio.h> #include<malloc.h> #define MAXE 20typedef int KeyType; typ ...
- 数据结构源码笔记(C语言):置换-选择算法
//实现置换-选择算法#include<stdio.h> #include<malloc.h> #include<string.h> #include<std ...
最新文章
- HDU2085:核反应堆(递推)
- python将字典写入json文件中
- ASP.NET中高级程序员 面试题
- TightVNC 2.6.4 发布
- 学好前端的 6 点建议,企业需要什么样的Web前端人才?
- 机器学习笔记——随机森林
- pclint如何不检查头文件_如何不拆轮胎,就能检查刹车片是否要换了
- ccs中如何插入字体
- mmh学长的实验器材
- matlab香农编码
- 车牌字符识别算法原理
- 计算机统计硕士排名,卡内基梅隆大学硕士统计学专业排名务必稳重的去看
- FIDO身份认证应用案例
- pyton 爬虫-图片
- 知识图谱-生物信息学-医学顶刊论文(Bioinformatics-2022)-SGCL-DTI:用于DTI预测的监督图协同对比学习
- Qt图形视图框架详解-安晓辉-专题视频课程
- vulnhub之Hacker_Kid-v1.0.1
- deny后加to do还是doing_区别的to do和doing用法的小技巧
- Python 比较不错的社区
- JDK8_新特性_详细总结+代码(1)Lambda表达式