冒泡排序:
#include <iostream>
using namespace std;
int main()
{
int arr[10] = {1,2,3,4,6,8,9,5,10,7};
int len = sizeof(arr) / sizeof(arr[0]);
cout << len << endl;
for (int i = 0; i < len-2; i++) {
for (int j = i; j < len-1; j++) {
if (arr[j]>arr[j + 1]) {
int s = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = s;
}
}
len--;
}
for (int i = 0; i < 10;i++) {
cout << arr[i] << endl;
}
return 0;
}
简单选择排序:
#include <iostream>
using namespace std;
int main()
{
int arr[10] = {1,2,3,4,6,8,9,5,10,7};
int len = sizeof(arr) / sizeof(arr[0]);
for (int i = 0; i < len-1;i++) {
int min = arr[i];
int index = i;
for (int j = i + 1; j < len;j++) {
if (arr[j] < min) {
min = arr[j];
index = j;
}
}
int temp = arr[i];
arr[i] = arr[index];
arr[index] = temp;
}
for (int i = 0; i < 10;i++) {
cout << arr[i] << endl;
}
return 0;
}
插入排序:
#include <iostream>
using namespace std;
int main()
{
int arr[10] = {1,2,3,4,6,8,9,5,10,7};
int len = sizeof(arr) / sizeof(arr[0]);
for (int i = 1; i < len;i++) {
for (int j = i; j > 0;j--) {
if (arr[j] < arr[j - 1]) {
int temp = arr[j];
arr[j] = arr[j - 1];
arr[j - 1] = temp;
}
else
break;
}
}
for (int i = 0; i < 10;i++) {
cout << arr[i] << endl;
}
return 0;
}