码磊姐姐
雄关漫道真如铁,而今迈步从头越。
    /* 选择排序
        是基础的排序
        大概思路:在数组中先找出最小数的索引,设一个变量保存下来,找到就进行交换
                最小的数和数组的第一个数进行交换,
                以此类推,再把数组其他数字最小数的索引找出,再和数组的第二位数进行交换。
        */
        var arr = [2, 5, 7, 8, 9, 1, 3, 4, 6];
        //先遍历,边界条件值是arr.length-1
        for (var i = 0; i < arr.length - 1; i++) {
            var minIndex = i;//保存最小数字的索引
            for (var j = i + 1; j < arr.length; j++) {
                if (arr[j] < arr[minIndex]) {
                    minIndex = j;//数字两两比较,保存小的那个数的索引
                }
            }
            //交换找到的最小值和本次循环的第一个元素
            if (minIndex !== i) {
                var temp = arr[minIndex];
                arr[minIndex] = arr[i];
                arr[i] = temp;
            }
        }
        console.log(arr);

 

posted on 2022-07-05 19:31  码磊姐姐  阅读(437)  评论(0编辑  收藏  举报