数据结构排序程序实例
更新时间:2023-11-02 05:47:01 阅读量: 综合文库 文档下载
几种排序:要求随机输入一组数据 随时给出某一趟排序的变化情况 1.直接插入排序;
2.冒泡排序,快速排序; 3.简单选择排序
程序源代码(已通过编译并运行成功):
#include
//////直接插入排序
void InsertSort(int a[],int n) {
int i,j,k=1;
for(i=2;i<=n;i++) { if(a[i]
a[0]=a[i]; a[i]=a[i-1];
for(j=i-2;a[0]
a[j+1]=a[0];}
printf(\第%d趟结果为:\ for(k=1;k<=n;k++) printf(\ } }
//////冒泡排序
void Bubsort(int a[],int n) { int i,j,flag,temp,k; for (i=n;i>=2;i--) { flag=0;
for (j=1;j<=i-1;j++) if (a[j]>a[j+1]) { temp=a[j]; a[j]=a[j+1]; a[j+1]=temp; flag=1; }
if (flag==0) break;
printf(\第%d趟结果为:\ for(k=1;k<=n;k++)
printf(\ } }
//////快速排序
void QuickSort(int a[],int left,int right) {
int i,j,temp,k; i=left; j=right;
temp=a[left]; if(left>right) return;
while(i!=j)/*找到最终位置*/ {
while(a[j]>=temp && j>i) j--; if(j>i)
a[i++]=a[j];
while(a[i]<=temp && j>i) i++; if(j>i) a[j--]=a[i];
printf(\本趟排序结果为:\ for(k=1;k<=right;k++) printf(\ }
a[i]=temp;
QuickSort(a,left,i-1);/*递归左边*/ QuickSort(a,i+1,right);/*递归右边*/ }
///////简单选择排序
void Slectsort(int a[],int n) { int i,j,k,temp,t=1,p; for (i=1;i if (a[k] void Print(int a[],int n) { int i; for(i=1;i<=n;i++) printf(\ printf(\} void main(int argc, char* argv[]) { int n,i; int left=1; int right; int a[100]; char ch='1'; loop: printf(\请输入共有几个数据参加排序(最多为100个):\ scanf(\ right=n; printf(\请随机输入%d个数据:\\n\ for(i=1;i<=n;i++) scanf(\ printf(\请选择需要的排序操作:\\n\ printf(\ 1.直接插入排序\\n\ printf(\ 2.冒泡排序\\n\ printf(\ 3.快速排序\\n\ printf(\ 4.简单选择排序\\n\ ch=getch(); if((ch!='1')&&(ch!='2')&&(ch!='3')&&(ch!='4')) } { printf(\错误,请输入1,2,3,4\\n\ ch=getch(); } switch(ch) { case '1': InsertSort(a,n); } printf(\直接插入排序的最后排序结果为:\ Print(a,n); goto loop;break; case '2': Bubsort(a,n); printf(\冒泡排序的最后排序结果为:\ Print(a,n); goto loop;break; case '3': QuickSort(a,left,right); printf(\快速排序的最后排序结果为:\ Print(a,n); goto loop;break; case '4': Slectsort(a,n); printf(\简单选择排序的最后排序结果为:\ Print(a,n); goto loop;break;
正在阅读:
数据结构排序程序实例11-02
汽配—汽车齿轮行业解决方案 - 图文01-25
爱在深秋作文500字07-16
收入分配与再分配05-24
关键绩效考核指标库04-14
阅读下面的文字,完成1-—3题。中国饮食文化蕴含生存之道英国02-09
(080806参赛)论在青年中推进社会主义核心价值体系建设的必要性和途径(0)09-11
翰佳星级商务酒店工程 施工组织设计06-15
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 数据结构
- 实例
- 排序
- 程序
- 汽车设计复习重点(1)
- 实验五 基于Matlab的信号频谱分析(复杂)
- 二年级数学上册《乘法的初步认识》教案设计
- 基坑围护、土方开挖专项监理实施细则
- 部编人教版一年级下册《吃水不忘挖井人》
- 2019高考语文有关“亲子关系”的作文的写作指导和例文
- 过秦论练习
- 软件工程硕士答辩环节的相关规定
- 破冰游戏:个人篇彼此认识43个
- 重庆大学土木工程材料力学考研复习选择题
- 公路筑养路机械管理制度(交通部交公路字42号)
- 日照体育大事记
- 房地产与医院联动方案
- 163-2009 中国联通无线局域网接入点设备测试规范(集中管理型)v1.0
- 岩土编录(工程地质,地基勘察,岩心编录方法)
- 汉口银行(原武汉市商业银行)2003年工作会议讲话
- 如何培养和提高学生的审题能力
- 97-98英语翻译
- 《计算机网络基础》课程标准
- 数学文化活动借鉴