数据结构--选择排序

数据结构--选择排序
选择排序核心思想每一轮在未排序区间里找到最小最大元素和未排序区间第一个元素交换逐步构建前面的有序区。也就是每一趟将待排序序列中的最小值找到再将其和待排序序列的第一个值进行交换换句话说就是相当于每一趟都把当前最小的值挪动到最前面-》每一趟我们要找的是最小值的位置而不是最小值是多少。左边已排序区间右边未排序区间逻辑起初默认原始数据全部是未排序序列。代码实现//选择排序 void Select_Sort(int arr[], int len) { for (int i 0;i len-1;i) {//控制趟数 int min i; for (int j i 1;j len;j) {//控制的是这一趟待排序序列值的遍历从而找到待排序序列最小值的所在位置 if (arr[j] arr[min]) { min j; } } if (min!i) {//判断待排序序列最小值和其第一个值是否是同一个值 int temp arr[min]; arr[min] arr[i]; arr[i] temp; } } }