【不懂就问】关于partial_sort
  • 板块学术版
  • 楼主_11037_
  • 当前回复15
  • 已保存回复15
  • 发布时间2022/5/22 18:39
  • 上次更新2023/10/28 00:49:57
查看原帖
【不懂就问】关于partial_sort
672581
_11037_楼主2022/5/22 18:39

rt,众所周知,partial_sort(first,mid,last)是将firstmid这个区间排序,那么

  1. 既然只是排firstmid,那么为什么还要last?
  2. 感觉sort(first,mid)也能做到partial_sort(first,mid,last)的事,那么为什么还要这玩意儿呢?

代码:

#include<bits/stdc++.h>
#define ll long long
using namespace std;
ll in()
{
    ll x=0;char c=getchar();
    while(c<'0'||c>'9')c=getchar();
    while(c>='0'&&c<='9'){x=x*10+c-48;c=getchar();}
    return x;
}
int a[500005],b[500005];
int main()
{
    srand(signed(time(NULL)));
    int n=in();
    for(int i=0;i<n;i++){a[i]=b[i]=rand();printf("%d ",a[i]);}
    puts("");
    sort(a+n/2,a+n);
    partial_sort(b+n/2,b+n,b+n);
    for(int i=0;i<n;i++)printf("%d ",a[i]);
    puts("");
    for(int i=0;i<n;i++)printf("%d ",b[i]);
    return 0;
}

2022/5/22 18:39
加载中...