排序算法 -延伸版-合并两个有序等位数组

Posted 超浪*牛

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了排序算法 -延伸版-合并两个有序等位数组相关的知识,希望对你有一定的参考价值。

/***********************************************************
*版权所有:(C) 2021.6.10  烽火大队-狼烟一号(第八方面军) 
* 
*文件名称:merge_sotr 
*内容摘要:排序算法 -延伸版 
*当前版本:1-2 
*文件作者:牛鹏 
*完成日期:2021.6.11
*
*修改记录:暂无 
***********************************************************/
#include <stdio.h>
#include <stdlib.h>
void merage(int a[],int b[],int temp[]){
	int k=0,i=0,j=0;
	while(i<5&&j<5){//假如有长度Wie5的两个有序数组
		if(a[i]<=b[j]){
			temp[k++] = a[i++];
		}else{
			temp[k++] = b[j++];
		}		
	}
	while(i<5){//将最后未入temp数组的直接插入,因为他们是排好序的
		temp[k++] = a[i++];
	}
	while(j<5){
		temp[k++] = b[j++];
	}
}

int main() {
	int i,temp[20]; 
	int a[] = {13,15,34,37,56};
	int b[] = {12,18,32,40,47};
	for(i=0;i<5;i++){
		printf("%d ",a[i]);
	}
	printf("\\n"); 
	for(i=0;i<5;i++){
		printf("%d ",b[i]);
	}
	merage(a,b,temp);
	printf("\\n排序后↓:\\n"); 
	for(i=0;i<10;i++){
		printf("%d ",temp[i]);
	}
	return 0;
}

在这里插入图片描述

以上是关于排序算法 -延伸版-合并两个有序等位数组的主要内容,如果未能解决你的问题,请参考以下文章

排序算法概述

跟我学c++中级篇——STL算法之排序

排序算法

算法排序算法之插入排序

算法排序算法之冒泡排序

排序算法(快速排序)