内排序算法C语言数据结构
5页1、/*数据结构C语言内排序部分算法实现*/#include#includevoid Merge(int *R,int low,int m,int high)/*归并排序*/ int i=low,j=m+1,p=0; int *R1; R1=(int *)malloc(high-low+1)*sizeof(int); if(!R1) return; while(i=m&j=high) R1p+=(Ri=Rj)?Ri+:Rj+; while(i=m) R1p+=Ri+; while(j=high) R1p+=Rj+; for(p=0,i=low;i=high;p+,i+) Ri=R1p;void MergeSort(int R,int low,int high) int mid; if(lowhigh) mid=(low+high)/2; MergeSort(R,low,mid); MergeSort(R,mid+1,high); Merge(R,low,mid,high); void bubble(int *a,int n) /*冒泡排序,定义两个参数:数组首地址与数组大小*/int i,
2、j,temp;for(i=0;in-1;i+)for(j=i+1;jaj)temp=ai;ai=aj;aj=temp;void choise(int *a,int n)/*选择排序*/int i,j,k,temp;for(i=0;in-1;i+)k=i; /*给记号赋值*/for(j=i+1;jaj) k=j; /*是k总是指向最小元素*/if(i!=k)/*当k!=i是才交换,否则ai即为最小*/temp=ai;ai=ak;ak=temp;void insert(int *a,int n)/*插入排序*/int i,j,temp;for(i=1;i=0&temp=1)for(i=k;i=0&xaj) aj+k=aj;j-=k;aj+k=x;k/=2; /*缩小间距值*/void quick(int *a,int i,int j)/*快速排序*/*数组首地址*a,要排序数组起始元素下标i,要排序数组结束元素下标j*/int m,n,temp;int k;m=i;n=j;k=a(i+j)/2; /*选取的参照*/dowhile(amk&mk&ni) n-; /* 从右到左找比k小的元素*
《内排序算法C语言数据结构》由会员桔****分享,可在线阅读,更多相关《内排序算法C语言数据结构》请在金锄头文库上搜索。
风险投资协议书范本
基于以G四链体DNA为靶点的isaindigotone类似物的设计与合成
锤击式预应力管桩基础施工方案培训资料
敬老献爱心活动总结模板(2篇).doc
针灸学穴位主治汇总
大学生计算机实习报告范文
高三作文审题好材料
北京语言大学21春《初级日语》离线作业一辅导答案66
儿童体格检查流程资料
学前教科研复习提纲及填空题
贵州卤制品技术应用项目商业计划书(参考模板)
阳江纺织服装销售项目实施方案模板范文
基于Android平台的塔防游戏设计—毕业设计
设备租赁协议简易电子版(三篇).doc
某项目超限轮扣模板支撑安全专项施工方案(129页)
端午的鸭蛋同步练习
(完整word版)1.学生选课系统可行性分析报告
这么慢那么美读后感
楷书折和钩的写法
建筑施工管理毕业论文
2022-12-24 12页
2023-07-03 6页
2024-02-04 10页
2023-09-27 15页
2022-08-28 7页
2022-08-26 4页
2023-04-25 8页
2023-12-04 5页
2022-12-01 5页
2023-07-03 15页