合并排序
来源:互联网 发布:张大奕的淘宝店劣质 编辑:程序博客网 时间:2024/05/16 16:16
合并排序是一种典型的分治算法:首先将序列分为两部分,然后对每一部分进行循环递归的排序,然后逐个将结果进行合并。
#include<stdio.h>#define m 7int a[m]={4,5,2,1,7,6,3};void mergesort(int a[],int left,int right){int mid;int b[m];int i,j,k;if(left==right)return;mid=(left+right)/2;mergesort(a,left,mid);mergesort(a,mid+1,right);i=left;j=m+1;k=left;while(i<=mid&&j<=right){if(a[i]<a[j]){b[k]=a[i];i++;k++;}else{b[k]=a[j];j++;k++;}}while(i<=mid){b[k]=a[i];i++;k++;} while(j>=right){b[k]=a[j];j++;k++;} for(k=left;k<=right;k++){a[k]=b[k];}}int main(){mergesort(a,0,m-1);for(int i=0;i<m;i++){printf("%d",a[i]);}}
阅读全文
0 0
- 合并排序
- 合并排序
- 合并排序
- 合并排序
- 合并排序
- 合并排序
- 合并排序
- 合并排序
- 合并排序
- 合并排序
- 合并排序
- 合并排序
- 合并排序
- 合并排序
- 合并排序
- 合并排序
- 合并排序
- 合并排序
- 第三单元man命令
- OpenGL国民党党徽、共青团团徽、花型的绘制
- 有关Response&Request知识点分析
- Oracle服务一键启动/关闭
- 2017 乌鲁木齐赛区网络赛 Islands(【点强连通问题】【缩点+点强连通分量】)
- 合并排序
- openlayers出现Failed to load resource: net::ERR_UNKNOWN_URL_SCHEME这个问题
- 手机界面设计-1
- process
- 用顺序表插入删除查找学生成绩
- Java设计模式与7大原则归纳整理
- Java 字节流
- 九度OJ——1078二叉树遍历
- 从m中取出n个全组合