作业介绍

冒泡排序与选择排序

冒泡排序:
#include<iostream>
using namespace std;
int n,a[10010];
int main(){
	cin>>n;
	for(int i=1;i<=n;i++) cin>>a[i];
	//冒泡排序:
	for(int i=1;i<=n-1;i++){//1         2        3         i  
		for(int j=1;j<=n-i;j++){//n-1  n-2     n-3        n-i   
			if(a[j]>a[j+1]){
				int x=a[j];
				a[j]=a[j+1];
				a[j+1]=x;
			}
		}
	}
	for(int i=1;i<=n;i++) cout<<a[i]<<" "; 
	return 0;
}
选择排序:
#include<bits/stdc++.h>
using namespace std;
int n,k,m,a[2000010];
int main(){
	cin>>n>>m;
	for(int i=1;i<=m;i++)cin>>a[i];
	//选择排序:
	for(int i=1;i<=m-1;i++){
		int x=a[i],s;//
		for(int j=i;j<=m;j++){//从i到m找最小值 
			if(a[j]<=x){
				x=a[j];
				s=j;//s保存最小值下标 
			}
		}
		a[s]=a[i];
		a[i]=x;
	} 
	for(int i=1;i<=m;i++)cout<<a[i]<<" ";
	return 0 ;
}
状态
已结束
题目
6
开始时间
2024-4-3 0:00
截止时间
2024-4-30 23:59
可延期
24 小时