1.冒泡排序
(1)从一端开始比较相邻的一对数,若满足需要的大小关系则进行交换。再进行相邻下一组的数的比较,直到最后一组数比较结束,最后一端的数一定是最大或者最小的数。
(2)最后从开始的一端重复上次操作(除了已经排序到结束端的数),每进行一次就会有一个除了已排序数的最大(小数)跟在上一排序数后。
(3)对于越来越少的数对进行上述操作,直到没有数对需要进行比较,则该序列为最终所求序列。
图略
2.代码
void bubble_sort(int arr[], int len)
{
int i, j;
for (i = 0; i < len - 1; i++) //外层循环控制趟数,总趟数为序列元素数
for (j = 0; j < len - 1 - i; j++) //内层循环为元素数减去已排序数加一
{
if (arr[j] > arr[j + 1]) //满足条件
swap(arr[j], arr[j + 1]); //进行交换
}
}
2.选择排序
(1)
(2) 图片转载于https://www.cnblogs.com/skywang12345/p/3597641.html#a1