编程一:
请使用选择排序对一整型数组升序排序
选择排序(冒泡排序):
45 32 56 90 21
每一轮里面选最小值和第i个元素进行交换,就是先选第一个为最小值,然后从剩下的选出最小值和第一个选出的最小值进行比较,如果比第一次选的最小值还小就交换。
(第一轮)i=0;min=45;minIndex=0.然后从i+1位置开始往后循环,45>32,记录min=32;minIndex=1;继续比较32小于56和90;直到32>21,记录min=21;minIndex=4. 交换45与21的位置。数列变为:21 32 56 90 45
(第二轮)i=1;min=32;minIndex=1.然后从i+1位置开始往后循环,未发现比32更小的数,位置不变。数列仍为:21 32 56 90 45
(第三轮)i=2;min=56;minIndex=2.然后从i+1位置开始往后循环,56>45,交换位置。数列变为:21 32 45 90 56
(第四轮)i=3;min=90;minIndex=3..然后从i+1位置开始往后循环,90>56, 交换位置。数列变为:21 32 45 56 90
结束循环。
代码如下: