新式排序欢迎dalao们解读!
  • 板块学术版
  • 楼主LG_Sam
  • 当前回复66
  • 已保存回复67
  • 发布时间2024/8/31 20:04
  • 上次更新2024/9/3 11:29:18
查看原帖
新式排序欢迎dalao们解读!
1358961
LG_Sam楼主2024/8/31 20:04
#include<bits/stdc++.h>
using namespace std;
int n,a[1010],b[1010];
int main(){
	cin>>n;//输入n个数
	for(int i=1;i<=n;i++){
		cin>>a[i];//输入数值
	}
	for(int i=1;i<=n;i++){//循环n次
		int minn=0x3f3f3f3f,mini=0;//最小值及其下标
		for(int j=1;j<=n;j++){
			if(a[j]<minn){//如果当前值为最小值
				minn=a[j];//修改最小值
				mini=j;//修改下标
			}
		}
		b[i]=a[mini];//将最小值存进b数组
		a[mini]=0x7f7f7f7f;//最小值变为最大
	}
	for(int i=1;i<=n;i++){
		cout<<b[i]<<" ";//输出
	}
	return 0;
}

自创的极值排序,是选排与插排的结合体。
时间复杂度 O(n2)O(n^2) ,空间复杂度 O(2n)O(2n) 。
对此,蒟蒻想问两个问题:
1.极值排序的实用性怎么样?
2.极值排序是稳定排序还是不稳定排序?
欢迎dalao解答!

2024/8/31 20:04
加载中...