冒泡排序
void BubbleSort(int *a, int length)
{std::cout << "Iteration 0:";
for (int i = 0; i < length; ++i) {
std::cout << a[i] << " ";}
std::cout << std::endl;
int temp;
for (int i = 0; i < length; ++i){
for (int j = 0; j < length - 1 - i; ++j) {
if (a[j] > a[j + 1]) {
temp = a[j];
a[j] = a[j + 1];
a[j + 1] = temp; }
}
std::cout << "Iteration " << i + 1 << ":";
for (int j = 0; j < length; ++j) {
std::cout << a[j] << " ";}
std::cout << std::endl;
}
}
插入排序
void InsertSort(int *a, int length)
{std::cout << "Iteration 0:";
for (int i = 0; i < length; ++i){ std::cout << a[i] << " "; }
std::cout << std::endl;
int temp;
for (int i = 1; i < length; ++i){
temp = a[i];
for (int j = i - 1; j >= 0; --j){
if (a[j] > temp) {
a[j + 1] = a[j];
a[j] = temp; } else {
break; }
}
std::cout << "Iteration " << i + 1 << ":";
for (int j = 0; j < length; ++j)
{ std::cout << a[j] << " "; }
std::cout << std::endl;}
}
选择排序
void SelectSort(int *a, int length){
std::cout << "Iteration 0:";
for (int i = 0; i < length; ++i){
std::cout << a[i] << " "; }
std::cout << std::endl;
int min_idx;
int temp;
for (int i = 0; i < length; ++i){
min_idx = i;
for (int j = i + 1; j < length; ++j){
if (a[j] < a[min_idx])
min_idx = j;}
temp = a[i];
a[i] = a[min_idx];
a[min_idx] = temp;
std::cout << "Iteration " << i + 1 << ":";
for (int j = 0; j < length; ++j){
std::cout << a[j] << " ";}
std::cout << std::endl;
}
}