算法:解决问题的方法或步骤的描述


推荐两个学习视频:
视频1
https://www.bilibili.com/video/av685670%C2%A0视频2
https://www.bilibili.com/video/av49706352









代码实现三种排序 :
注意了!
注意了!
注意了!
#include<bits/stdc++.h>
using namespace std;
int a[1000],len;
int main(){
cin>>len;
for(int i=1;i<=len;i++) cin>>a[i];
for(int i=1;i<=len;i++){
int min=i;
for(int j=i+1;j<=len;j++){
if(a[min]>a[j]) min=j;
}
swap(a[i],a[min]);
}
for(int i=1;i<=len;i++){
cout<<a[i]<<" ";
}
return 0;
}
//选择排序
#include<bits/stdc++.h>
using namespace std;
int a[1000],n;
bool t;
int main(){
cin>>n;
for(int i=1;i<=n;i++){
cin>>a[i];
}
for(int i=1;i<=n;i++){
t=false;
for(int j=1;j<n;j++){
if(a[j]>a[j+1]){
swap(a[j],a[j+1]);
t=true;
}
}
if(t==false) break;
}
for(int i=1;i<=n;i++){
cout<<a[i]<<" ";
}
return 0;
}
//冒泡排序
#include<bits/stdc++.h>
using namespace std;
int a[1000],n,t;
int main(){
cin>>n;
for(int i=1;i<=n;i++){
cin>>a[i];
}
for(int i=2;i<=n;i++){
int j;
t=a[i];
for(j=i-1;j>=1&&a[j]>t;j--){
a[j+1]=a[j];
}
a[j+1]=t;
}
for(int i=1;i<=n;i++){
cout<<a[i]<<" ";
}
return 0;
}
//插入排序
文章提供了三个C++代码示例,分别演示了选择排序、冒泡排序和插入排序这三种基础的排序算法,是学习算法的好资源。
https://www.bilibili.com/video/av685670%C2%A0
422

被折叠的 条评论
为什么被折叠?



