[YM]模板-归并排序

概念:

归并排序,其实是一种分治和递归算法

将大问题转化为一个个小问题处理,最终整合成一个大问题

模板:

cpp 复制代码
const int N = 2e5 + 5;
int a[N],b[N],n;

void mergeSort(int l, int r){
  if(l>=r) return;
  int mid=(l+r)>>1; 
  mergeSort(l,mid); mergeSort(mid+1,r);
  int i=l,j=mid+1,k=l;
  while(i<=mid&&j<=r){
    if(a[i]<=a[j])b[k++]=a[i++]; 
   	else b[k++]=a[j++];
  }
  while(i<=mid)b[k++]=a[i++];
  while(j<=r)b[k++]=a[j++];
  for(int i=l;i<=r;i++)a[i]=b[i];
}

void solve(){
    cin>>n;
    for(int i=1;i<=n;i++)cin>>a[i];
    mergeSort(1,n);
    for(int i=1;i<=n;i++)cout<<a[i]<<" \n"[i==n];
}
相关推荐
用户690673881922 分钟前
基于无人机的单目测距系统,平均误差仅2.12%
算法
Mrlxl.cn2 分钟前
计算机网络——传输层
c语言·计算机网络·考研·排序算法
Carsene11 分钟前
第一章:为什么我们需要“类型安全”的 SQL DSL 框架?
java·sql
wyu7296113 分钟前
Spring MVC 学习笔记:配置、注解、RESTful、JSON、拦截器、SSM整合、文件上传下载
java
6Hzlia15 分钟前
【Hot 100 刷题计划】 LeetCode 141. 环形链表 | C++ 哈希表直觉解法
c++·leetcode·链表
dinl_vin18 分钟前
LangChain 系列·(四):RAG 基础——给大模型装上“外脑“
人工智能·算法·langchain
Mr_pyx24 分钟前
Java 注解(Annotation)详解:从基础到 APT 实战
java·数据库·sqlserver
码完就睡39 分钟前
数据结构——哈希表原理与C语言实现总结
数据结构·散列表
探物 AI43 分钟前
【感知·医学分割】当 YOLOv11 杀入医学赛道:先检测后分割的级联架构
算法·yolo·计算机视觉·架构
MegaDataFlowers1 小时前
调用Service层操作数据
java·开发语言