1.冒泡排序
在数组里,从左到右,相邻元素两两比较,若不符合排序,互换位置,直到最右边。然后重复以上操作,直到最右边-1。

int arr[7]={87,67,78,98,67,90,77};
for(int i=0;i<6;i++){
for(int j=0;j<6-i;j++){
if(arr[j]>arr[j+1]){
int temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
for(int x=0;x<6;x++){
cout<<arr[x]<<endl;
}
选择排序
简单直观的排序算法。它的工作原理:首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。
#include<iostream>
using namespace std;
int main() {
int arr[7] = { 87,69,78,98,67,90,77 };
for (int i = 0; i < 6; i++) {
int min = i;
for (int j = i + 1; j < 7; j++) {
if (arr[j] < arr[min]) {
min = j;
}
}
int temp = arr[i];
arr[i] = arr[min];
arr[min] = temp;
}
for (int i = 0; i < 6; i++) {
cout << arr[i] << endl;
}
system("pause");
return 0;
}
插入排序
斗地主时,排牌的方式
int arr[7] = { 87,69,67,98,78,90,77 };
for (int i = 1; i < 7; i++) {
int x = i - 1;
int temp = arr[i];
while (x >= 0 && arr[x] > temp) {
arr[x + 1] = arr[x];
x--;
}
arr[x + 1] = temp;
}
for (int i = 0; i < 7; i++) {
cout << arr[i] << endl;
}