选择排序

void swap(int& a, int& b) {   //两数互相交换
	int temp = a;
	a = b;
	b = temp;
}
void selection_sort(int nums[], int len)
{
	int min=0;
	for (int i = 0; i < len; i++) {
	    min=i;    //定义当前值的下标为最小值下标
		for (int j = i+1; j <len; j++) {
			if (nums[j] < nums[min]) {   //如果有比当前值还小的
			    min=j;					 //把更小的值的下标赋值给min
			}
		}
		if(i!=min){   //如果下标为i的值不是最小值,那么把最小值交换到前面
		    wap(nums[j], nums[i]);
		}
	}
}

注意:代码中的最小值指的是从下标i往后的序列中的最小值,而不是整个序列的最小值

插入排序 :https://blog.csdn.net/qq_43657442/article/details/103717359

快速排序 :https://blog.csdn.net/qq_43657442/article/details/103716839

冒泡排序 :https://blog.csdn.net/qq_43657442/article/details/103716226

posted on 2021-06-11 10:32  雾恋过往  阅读(33)  评论(0编辑  收藏  举报

Live2D