冒泡排序
右边放最大的,左边放最小的。第一趟比较,第二趟比较,第三趟比较…
//冒泡排序
#include<stdio.h>
int main()
{
int a[10]={3,1,4,5,2};//整个过程执行n-1趟
for(int i=1;i<=4;i++)
{
for(int j=0;j<5-i;j++)
{
if(a[j]>a[j+1]){
int temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
}
}
}
for(int i=0;i<5;i++)
{
printf("%d",a[i]);
}
return 0;
}
选择排序
总共需要n趟操作,每趟操作需要选出待排序部分【i,n】中最小的元素
void selectsort()
{
for(int i=1;i<=n;i++)
{
int k=i;
for(int j=i;j<=n;j++)
{
if(A[j]<A[k])
{
k=j;
}
}
int temp=A[i];
A[i]=A[k];
A[k]=temp;
}
}
插入排序
在这里插入代码片
sort排序
sort函数的使用必须加上头文件algorithm
在STL标准容器中,只有vector、string、deque是可以使用sort的。这是因为像set、map这种容器是用红黑树实现的,元素本身有序,故不允许使用sort排序