题单:归并排序

样例 #1

样例输入 #1样例输出 #1

复制代码
2 5
4 7
2 4 5 7
1 3
2 6
1 2 3 6
1 2 2 3 4 5 6 7
1 2 2 3 4 5 6 7
cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
int n,a[1000005],tmp[1000005]; 
void mearge(int l,int mid,int r)
{
	int i=l,j=mid+1,k=l;
	while(i<=mid&&j<=r)
	{
		if(a[i]<a[j]) tmp[k++]=a[i++];
		else tmp[k++]=a[j++];
	}
	while(i<=mid) tmp[k++]=a[i++];
	while(j<=r) tmp[k++]=a[j++];
	for(int i=l;i<=r;i++)
	{
		a[i]=tmp[i];
		cout<<a[i]<<" ";
	}
	cout<<endl;
}
void mearge_sort(int l,int r)
{
	if(l==r)
	{
		return ;
	}
	int mid=(l+r)/2;
	mearge_sort(l,mid);
	mearge_sort(mid+1,r);
	mearge(l,mid,r);
}
int main(){
	cin>>n;
	for(int i=1;i<=n;i++) cin>>a[i];
	mearge_sort(1,n);
	for(int i=1;i<=n;i++)
	{
		cout<<a[i]<<" ";
	}
	return 0;
}
相关推荐
Dillon Dong10 分钟前
【风电控制】TI TMS320F28379D 双CPU架构解析与任务分布设计
嵌入式硬件·算法·变流器·风电控制
NiceCloud喜云5 小时前
Opus 4.8 的 Effort Control 怎么选:Low 到 Max 五档策略
android·java·大数据·前端·c++·python·spring
小羊在睡觉6 小时前
力扣84. 柱状图中最大的矩形
后端·算法·leetcode·golang·go
cjhbachelor6 小时前
c++继承
c++
3DVisionary6 小时前
蓝光三维扫描:医疗制造的精度焦虑怎么解
人工智能·算法·制造·蓝光三维扫描·医疗制造·三维检测·义齿检测
好评笔记6 小时前
机器学习面试八股——常用损失函数
人工智能·深度学习·算法·机器学习·校招
weixin_468466856 小时前
全局与局部注意力机制新手实战指南
人工智能·python·深度学习·算法·自然语言处理·transformer·注意力机制
肩上风骋6 小时前
C++14特性
开发语言·c++·c++14特性
_日拱一卒6 小时前
LeetCode:994腐烂的橘子
java·数据结构·算法·leetcode·深度优先
珂朵莉MM7 小时前
第七届全球校园人工智能算法精英大赛-算法巅峰赛产业命题赛第3赛季优化题--束搜索
人工智能·算法