本文最后更新于 148 天前,其中的信息可能已经有所发展或是发生改变。
1.冒泡排序
//冒泡排序实现
void bubblesort(int buf[], int numb)
{
for (; numb > 1; numb--)
{
for (int i = 0; i < numb - 1; i++)
{
if (buf[i] > buf[i + 1])
{
buf[i] = buf[i] + buf[i + 1];
buf[i + 1] = buf[i] - buf[i + 1];
buf[i] = buf[i] - buf[i + 1];
}
}
}
return;
}2.插入排序
//插入排序实现
void insertsort(int buf[], int numb) {
for (int i = 0; i < numb - 1; i++) { // i 是已排序部分的最后一个索引
int key = buf[i + 1]; // 待插入的元素
int j = i;
while (j >= 0 && buf[j] > key) {
buf[j + 1] = buf[j];
j--;
}
buf[j + 1] = key;
}
}3.选择排序
// 选择排序实现
void selectsort(int buf[], int numb)
{ // 最小值
int min;
//最小值下标
int index;
for (int j = 0; j < numb - 1; j++)
{
for (int i = j; i < numb; i++)
{
min = buf[i];
if (min > buf[i + 1])
{
min = buf[i + 1];
index = i + 1;
}
}
buf[j] = buf[j] + buf[index];
buf[index] = buf[j] - buf[index];
buf[j] = buf[j] - buf[index];
}
return;
}


