js 怎么把字符串组 按顺序a-z,A-Z,0-9,的顺序排列

JavaScript011

js 怎么把字符串组 按顺序a-z,A-Z,0-9,的顺序排列,第1张

如下:

">

<html> <head>  <meta http-equiv="Content-Type" content="text/html charset=gbk">  <title>Untitled Document</title>  <script>   window.onload=function(){    var a="1我a2你b3他d"   //要排序的字符串a    var b=a.split("")       //分割字符串a为数组b    b.sort()              //数组b升序排序(系统自带的方法)    var c=b.join("")        //把数组b每个元素连接成字符串c    alert(c)              //输出最终排序好的字符串   }  </script> </head> <body> </body>

</html>

排序是计算机内经常进行的一种操作,其目的是将一组“无序”的记录序列调整为“有序”的记录序列。分内部排序和外部排序,若整个排序过程不需要访问外存便能完成,则称此类排序问题为内部排序。

反之,若参加排序的记录数量很大,整个序列的排序过程不可能在内存中完成,则称此类排序问题为外部排序。内部排序的过程是一个逐步扩大记录的有序序列长度的过程。

function mySort(str) {

    var list = str.split(" ")

    var map = new Map()

    list.forEach(function (value) {

        var sort = 0

        for (var i = 1 i <= (value.length > 3 ? 3 : value.length) i++) {

            sort += +(value.substr(-i, 1))

        }

        map.set(value, sort)

    })

    list.sort(function (a, b) {

        return map.get(a) - map.get(b)

    })

    return list.join(" ")

}

var str = '1223 2016 22 58206 7459 10483 157 44803 11 902193'

console.log(str)

console.log(mySort(str))