欢迎您访问365答案网,请分享给你的朋友!
生活常识 学习资料

归并排序C++(不调用库函数)

时间:2023-04-26

归并排序 C++(不调用库函数)

#include #include void mergeSort(int *a, int L, int R);void merge(int *a,int i,int m,int j);int main(void){int i=0;int array[10]={5,8,9,4,1,3,8,4,0,2};mergeSort(array,0,9); for(i=0;i<10;i++){ printf("%d,",array[i]);}} void mergeSort(int *a, int i, int j){int m=0;if(i!=j){int m=(i+j)/2;mergeSort(a,i,m);mergeSort(a,m+1,j);merge(a,i,m,j);}}void merge(int *a,int i,int m,int j){int b[j-i+1];int p=0;int p1=i; int p2=m+1;while(p1<=m&&p2<=j){b[p++]=a[p1]>a[p2]? a[p2++]:a[p1++]; }while(p1<=m){b[p++]=a[p1++];}while(p2<=j){b[p++]=a[p2++];}for(p=0;p

Copyright © 2016-2020 www.365daan.com All Rights Reserved. 365答案网 版权所有 备案号:

部分内容来自互联网,版权归原作者所有,如有冒犯请联系我们,我们将在三个工作时内妥善处理。