中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

js實現字符全排列算法的簡單方法

發布時間:2020-10-07 01:39:28 來源:腳本之家 閱讀:185 作者:jingxian 欄目:web開發

實例如下:

<!doctype html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>字符全排列</title>
</head>
<body>
   
 
<script>
function charsMap(o){
  o = (o+"").replace(/(\w)(?=\w*\1)/g,"").replace(/\s+/g,""); //去除重復字符以及空白字符
  switch(o.length){
    case 0: 
    case 1: return [o];
    default: 
      var p = /^(\S+?)(\S)$/.exec(o), //使用正則將字符串分割為n-1長度字符串,以及最后一個字符串。
        _r = charsMap(p[1]), 
        l = p[2], 
        r = [];
       
      for (var i = 0; i < _r.length; i++) {
        var t = _r[i];
        for (var j = 0, len = t.length; j <= len; j++) {
          r.push( t.replace( new RegExp("^(\\S{"+j+"})(\\S{"+(len-j)+"})$"), "$1"+l+"$2" ) ); 
          //字符插入位置從開頭前到結尾后,正則的作用相當于Array.splice(j,0,l); 在下標j的位置插入一個字符l
        }
      }
      return r;
  }
}
 
var arr = "abcde";
var t = new Date().getTime();
var result = charsMap(arr);
document.write( "總耗時:"+(new Date().getTime()-t)+"ms" );
 
  var html = "<ul><li>" + result.join("</li><li>") + "</li></ul>";
  document.write(html);
</script>
</body>
</html>

以上這篇js實現字符全排列算法的簡單方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

高安市| 霍城县| 平顺县| 南昌市| 孟连| 中山市| 闻喜县| 平昌县| 麻江县| 宝坻区| 文登市| 乐都县| 韶山市| 平泉县| 青冈县| 仙桃市| 德庆县| 泸州市| 宜君县| 渭南市| 嘉义县| 措勤县| 黄陵县| 蒙自县| 河池市| 于都县| 平泉县| 勐海县| 阳谷县| 海安县| 平定县| 临桂县| 松江区| 日土县| 苍山县| 古浪县| 永新县| 施秉县| 木兰县| 中山市| 临洮县|