直接选择排序

//选择排序(Selection-sort)是一种简单直观的排序算法。它的工作原理:首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,
//然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。

//超级稳定的算法 时间复杂度永远是O(n的平方)
//空间复杂度为O(1)
        var arr = [49, 38, 65, 97, 76, 13, 27, 48, 55, 4];

        function SelectSort(arr) {
            for(var i=0;i<arr.length;i++){
                var k = i
                for(var j=i+1;j<arr.length;j++){
                    if(arr[j]<arr[k]){
                        k = j
                    }
                }
                if(k!==i){
                    temp = arr[k]
                    arr[k] = arr[i]
                    arr[i] = temp
                }
            }
            return arr;
        }
        console.log(SelectSort(arr)); //4, 13, 27, 38, 48, 49, 55, 65, 76, 97
排序算法 文章被收录于专栏

排序算法

全部评论

相关推荐

10-25 00:32
香梨想要offer:感觉考研以后好好学 后面能乱杀,目前这简历有点难
点赞 评论 收藏
分享
10-12 19:08
666 C++
花开蝶自来_:技能:听动物叫,让雪豹闭嘴
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务