0
点赞
收藏
分享

微信扫一扫

数据结构排序算法之选择排序(1)

yeamy 2022-02-22 阅读 34

排序算法之选择排序

void SelectSort(int *arr, int len)
{
    int min = -1;
    for(int i = 0; i < len; i++){
        min = i;
        for(int j = i + 1; j < len; j++){		//内层循环目的是找出数组未排序的最小值
            if(arr[min] > arr[j])				//判断是否需要进行交换
                min = j;						//需要,将当前下标设置为最小值的下标
        }
        if(min != i){							//如果最小值的下标和未排序数组的首个下标不等,则交换
            arr[min] = arr[min] ^ arr[i];		//使用异或的方法进行交换
            arr[i] = arr[i] ^ arr[min];
            arr[min] = arr[min] ^ arr[i];
        }
    }
}
举报

相关推荐

0 条评论