多維數(shù)組/多個(gè)數(shù)組的排列組合

彩票七星彩的選碼規(guī)則辜腺,5個(gè)數(shù)字至少選2個(gè)休建,列出所有數(shù)字組合方法,未選擇數(shù)字的列用“*”表示评疗。
例子為:5*10表格测砂,可自由選擇數(shù)字,根據(jù)每列數(shù)字的選擇情況百匆,進(jìn)行組合砌些。

image.png

代碼:

<!DOCTYPE html>
<html>

<head>
<title>數(shù)列組合方法</title>
</head>

<body>
  <center>
        <table width="400" border="1" id="table">
            <tr>
                <th align="center">第一列</th>
                <th align="center">第二列</th>
                <th align="center">第三列</th>
                <th align="center">第四列</th>
                <th align="center">第五列</th>
            </tr>
            <tr>
                <td align="center"><button type="button" id="a" onClick="a0('a0', '0')">0</button><input type="text" value=" " id="a0"></td>
                <td align="center"><button type="button" id="a" onClick="a1('a1', '0')">0</button><input type="text" value=" " id="a1"></td>
                <td align="center"><button type="button" id="a" onClick="a2('a2', '0')">0</button><input type="text" value=" " id="a2"></td>
                <td align="center"><button type="button" id="a" onClick="a3('a3', '0')">0</button><input type="text" value=" " id="a3"></td>
                <td align="center"><button type="button" id="a" onClick="a4('a4', '0')">0</button><input type="text" value=" " id="a4"></td>
            </tr>
            <tr>
                <td align="center"><button type="button" id="b" onClick="b0('b0', '1')">1</button><input type="text" value=" " id="b0"></td>
                <td align="center"><button type="button" id="b" onClick="b1('b1', '1')">1</button><input type="text" value=" " id="b1"></td>
                <td align="center"><button type="button" id="b" onClick="b2('b2', '1')">1</button><input type="text" value=" " id="b2"></td>
                <td align="center"><button type="button" id="b" onClick="b3('b3', '1')">1</button><input type="text" value=" " id="b3"></td>
                <td align="center"><button type="button" id="b" onClick="b4('b4', '1')">1</button><input type="text" value=" " id="b4"></td>
            </tr>
            <tr>
                <td align="center"><button type="button" id="c" onClick="c0('c0', '2')">2</button><input type="text" value=" " id="c0"></td>
                <td align="center"><button type="button" id="c" onClick="c1('c1', '2')">2</button><input type="text" value=" " id="c1"></td>
                <td align="center"><button type="button" id="c" onClick="c2('c2', '2')">2</button><input type="text" value=" " id="c2"></td>
                <td align="center"><button type="button" id="c" onClick="c3('c3', '2')">2</button><input type="text" value=" " id="c3"></td>
                <td align="center"><button type="button" id="c" onClick="c4('c4', '2')">2</button><input type="text" value=" " id="c4"></td>
            </tr>
            <tr>
                <td align="center"><button type="button" id="d" onClick="d0('d0', '3')">3</button><input type="text" value=" " id="d0"></td>
                <td align="center"><button type="button" id="d" onClick="d1('d1', '3')">3</button><input type="text" value=" " id="d1"></td>
                <td align="center"><button type="button" id="d" onClick="d2('d2', '3')">3</button><input type="text" value=" " id="d2"></td>
                <td align="center"><button type="button" id="d" onClick="d3('d3', '3')">3</button><input type="text" value=" " id="d3"></td>
                <td align="center"><button type="button" id="d" onClick="d4('d4', '3')">3</button><input type="text" value=" " id="d4"></td>
            </tr>
            <tr>
                <td align="center"><button type="button" id="e" onClick="e0('e0', '4')">4</button><input type="text" value=" " id="e0"></td>
                <td align="center"><button type="button" id="e" onClick="e1('e1', '4')">4</button><input type="text" value=" " id="e1"></td>
                <td align="center"><button type="button" id="e" onClick="e2('e2', '4')">4</button><input type="text" value=" " id="e2"></td>
                <td align="center"><button type="button" id="e" onClick="e3('e3', '4')">4</button><input type="text" value=" " id="e3"></td>
                <td align="center"><button type="button" id="e" onClick="e4('e4', '4')">4</button><input type="text" value=" " id="e4"></td>
            </tr>
            <tr>
                <td align="center"><button type="button" id="f" onClick="f0('f0', '5')">5</button><input type="text" value=" " id="f0"></td>
                <td align="center"><button type="button" id="f" onClick="f1('f1', '5')">5</button><input type="text" value=" " id="f1"></td>
                <td align="center"><button type="button" id="f" onClick="f2('f2', '5')">5</button><input type="text" value=" " id="f2"></td>
                <td align="center"><button type="button" id="f" onClick="f3('f3', '5')">5</button><input type="text" value=" " id="f3"></td>
                <td align="center"><button type="button" id="f" onClick="f4('f4', '5')">5</button><input type="text" value=" " id="f4"></td>
            </tr>
          <tr>
                <td align="center"><button type="button" id="g" onClick="g0('g0', '6')">6</button><input type="text" value=" " id="g0"></td>
                <td align="center"><button type="button" id="g" onClick="g1('g1', '6')">6</button><input type="text" value=" " id="g1"></td>
                <td align="center"><button type="button" id="g" onClick="g2('g2', '6')">6</button><input type="text" value=" " id="g2"></td>
                <td align="center"><button type="button" id="g" onClick="g3('g3', '6')">6</button><input type="text" value=" " id="g3"></td>
                <td align="center"><button type="button" id="g" onClick="g4('g4', '6')">6</button><input type="text" value=" " id="g4"></td>
            </tr>
            <tr>
                <td align="center"><button type="button" id="h" onClick="h0('h0', '7')">7</button><input type="text" value=" " id="h0"></td>
                <td align="center"><button type="button" id="h" onClick="h1('h1', '7')">7</button><input type="text" value=" " id="h1"></td>
                <td align="center"><button type="button" id="h" onClick="h2('h2', '7')">7</button><input type="text" value=" " id="h2"></td>
                <td align="center"><button type="button" id="h" onClick="h3('h3', '7')">7</button><input type="text" value=" " id="h3"></td>
                <td align="center"><button type="button" id="h" onClick="h4('h4', '7')">7</button><input type="text" value=" " id="h4"></td>
            </tr>
            <tr>
                <td align="center"><button type="button" id="i" onClick="i0('i0', '8')">8</button><input type="text" value=" " id="i0"></td>
                <td align="center"><button type="button" id="i" onClick="i1('i1', '8')">8</button><input type="text" value=" " id="i1"></td>
                <td align="center"><button type="button" id="i" onClick="i2('i2', '8')">8</button><input type="text" value=" " id="i2"></td>
                <td align="center"><button type="button" id="i" onClick="i3('i3', '8')">8</button><input type="text" value=" " id="i3"></td>
                <td align="center"><button type="button" id="i" onClick="i4('i4', '8')">8</button><input type="text" value=" " id="i4"></td>
            </tr>
            <tr>
                <td align="center"><button type="button" id="j" onClick="j0('j0', '9')">9</button><input type="text" value=" " id="j0"></td>
                <td align="center"><button type="button" id="j" onClick="j1('j1', '9')">9</button><input type="text" value=" " id="j1"></td>
                <td align="center"><button type="button" id="j" onClick="j2('j2', '9')">9</button><input type="text" value=" " id="j2"></td>
                <td align="center"><button type="button" id="j" onClick="j3('j3', '9')">9</button><input type="text" value=" " id="j3"></td>
                <td align="center"><button type="button" id="j" onClick="j4('j4', '9')">9</button><input type="text" value=" " id="j4"></td>
            </tr>
        </table>
        <button onClick="onPrint()">打印</button>
        <div id="myDiv"></div>
 </center>
</body>
<script type="text/javascript">
  // 全局變量
    var arr0 = [] // [a0,b0,c0,d0,e0,f0,g0,h0,i0,j0]
  var arr1 = [] // [a1,b1,c1,d1,e1,f1,g1,h1,i1,j1]
    var arr2 = [] // [a2,b2,c2,d2,e2,f2,g2,h2,i2,j2]
    var arr3 = [] // [a3,b3,c3,d3,e3,f3,g3,h3,i3,j3]
    var arr4 = [] // [a4,b4,c4,d4,e4,f4,g4,h4,i4,j4]
    var aArr0 = "", aArr1 = "", aArr2 = "", aArr3 = "", aArr4 = "";
    var bArr0 = "", bArr1 = "", bArr2 = "", bArr3 = "", bArr4 = "";
    var cArr0 = "", cArr1 = "", cArr2 = "", cArr3 = "", cArr4 = "";
    var dArr0 = "", dArr1 = "", dArr2 = "", dArr3 = "", dArr4 = "";
    var eArr0 = "", eArr1 = "", eArr2 = "", eArr3 = "", eArr4 = "";
    var fArr0 = "", fArr1 = "", fArr2 = "", fArr3 = "", fArr4 = "";
    var gArr0 = "", gArr1 = "", gArr2 = "", gArr3 = "", gArr4 = "";
    var hArr0 = "", hArr1 = "", hArr2 = "", hArr3 = "", hArr4 = "";
    var iArr0 = "", iArr1 = "", iArr2 = "", iArr3 = "", iArr4 = "";
    var jArr0 = "", jArr1 = "", jArr2 = "", jArr3 = "", jArr4 = "";

    function a0(val, num){ aArr0 = a(val, num) }
  function a1(val, num){ aArr1 = a(val, num) }
  function a2(val, num){ aArr2 = a(val, num) }
  function a3(val, num){ aArr3 = a(val, num) }
  function a4(val, num){ aArr4 = a(val, num) }

    function b0(val, num){ bArr0 = a(val, num) }
    function b1(val, num){ bArr1 = a(val, num) }
    function b2(val, num){ bArr2 = a(val, num) }
    function b3(val, num){ bArr3 = a(val, num) }
    function b4(val, num){ bArr4 = a(val, num) }

  function c0(val, num){ cArr0 = a(val, num) }
    function c1(val, num){ cArr1 = a(val, num) }
    function c2(val, num){ cArr2 = a(val, num) }
    function c3(val, num){ cArr3 = a(val, num) }
    function c4(val, num){ cArr4 = a(val, num) }

    function d0(val, num){ dArr0 = a(val, num) }
    function d1(val, num){ dArr1 = a(val, num) }
    function d2(val, num){ dArr2 = a(val, num) }
    function d3(val, num){ dArr3 = a(val, num) }
    function d4(val, num){ dArr4 = a(val, num) }

    function e0(val, num){ eArr0 = a(val, num) }
    function e1(val, num){ eArr1 = a(val, num) }
    function e2(val, num){ eArr2 = a(val, num) }
    function e3(val, num){ eArr3 = a(val, num) }
    function e4(val, num){ eArr4 = a(val, num) }

    function f0(val, num){ fArr0 = a(val, num) }
    function f1(val, num){ fArr1 = a(val, num) }
    function f2(val, num){ fArr2 = a(val, num) }
    function f3(val, num){ fArr3 = a(val, num) }
    function f4(val, num){ fArr4 = a(val, num) }

    function g0(val, num){ gArr0 = a(val, num) }
    function g1(val, num){ gArr1 = a(val, num) }
    function g2(val, num){ gArr2 = a(val, num) }
    function g3(val, num){ gArr3 = a(val, num) }
    function g4(val, num){ gArr4 = a(val, num) }

    function h0(val, num){ hArr0 = a(val, num) }
    function h1(val, num){ hArr1 = a(val, num) }
    function h2(val, num){ hArr2 = a(val, num) }
    function h3(val, num){ hArr3 = a(val, num) }
    function h4(val, num){ hArr4 = a(val, num) }

    function i0(val, num){ iArr0 = a(val, num) }
    function i1(val, num){ iArr1 = a(val, num) }
    function i2(val, num){ iArr2 = a(val, num) }
    function i3(val, num){ iArr3 = a(val, num) }
    function i4(val, num){ iArr4 = a(val, num) }

    function j0(val, num){ jArr0 = a(val, num) }
    function j1(val, num){ jArr1 = a(val, num) }
    function j2(val, num){ jArr2 = a(val, num) }
    function j3(val, num){ jArr3 = a(val, num) }
    function j4(val, num){ jArr4 = a(val, num) }

  // $('id')來實(shí)現(xiàn)document.getElementById('id') 
    function $() {
        var elements = new Array();
        for (var i = 0; i < arguments.length; i++) {
            var element = arguments[i];
            if (typeof element == 'string') element = document.getElementById(element);
            if (arguments.length == 1) return element;
            elements.push(element);
        }
        return elements;
    }

    function a(val, num){
        $(val).value == " " ? $(val).value=num : $(val).value=" "; // 再次點(diǎn)擊清空
        return $(val).value;
    }

    function onPrint() {
        arr0 = toStarts(aArr0, bArr0, cArr0, dArr0, eArr0, fArr0, gArr0, hArr0, iArr0, jArr0);
        arr1 = toStarts(aArr1, bArr1, cArr1, dArr1, eArr1, fArr1, gArr1, hArr1, iArr1, jArr1);
        arr2 = toStarts(aArr2, bArr2, cArr2, dArr2, eArr2, fArr2, gArr2, hArr2, iArr2, jArr2);
        arr3 = toStarts(aArr3, bArr3, cArr3, dArr3, eArr3, fArr3, gArr3, hArr3, iArr3, jArr3);
        arr4 = toStarts(aArr4, bArr4, cArr4, dArr4, eArr4, fArr4, gArr4, hArr4, iArr4, jArr4);
        // 至少選擇兩列
        if (arr0.length && (arr1.length || arr2.length || arr3.length || arr4.length)) {
            // console.log(1)
        } else if (arr1.length && (arr0.length || arr2.length || arr3.length || arr4.length)) {
            // console.log(2)
        } else if (arr2.length && (arr0.length || arr1.length || arr3.length || arr4.length)) {
            // console.log(3)
        } else if (arr3.length && (arr0.length || arr2.length || arr1.length || arr4.length)) {
            // console.log(4)
        } else if (arr4.length && (arr0.length || arr2.length || arr3.length || arr1.length)) {
            // console.log(5)
        } else {
            alert("至少選擇兩列中的數(shù)字")
            return false
        }
        // 某一列沒有選擇賦值為“*”
        arr0 = arr0.length ? arr0 : ["*"]
        arr1 = arr1.length ? arr1 : ["*"]
        arr2 = arr2.length ? arr2 : ["*"]
        arr3 = arr3.length ? arr3 : ["*"]
        arr4 = arr4.length ? arr4 : ["*"]
        var arr = [arr0, arr1, arr2, arr3, arr4];
        console.log(arr)
        $("myDiv").innerHTML = doExchange(arr).join("<br />"); // 網(wǎng)頁換行
    }
    // 去空值
    function toStarts(a, b, c, d, e, f, g, h, i, j) {
        let list = [a, b, c, d, e, f, g, h, i, j]
        return list.filter(function (s) {
            return s && s.trim();
        })
    }
    // 返回組合的數(shù)組
  function doExchange(arr){
        var len = arr.length;
        // 當(dāng)數(shù)組大于等于2個(gè)的時(shí)候
        if(len >= 2){
            // 第一個(gè)數(shù)組的長度
            var len1 = arr[0].length;
            // 第二個(gè)數(shù)組的長度
            var len2 = arr[1].length;
            // 2個(gè)數(shù)組產(chǎn)生的組合數(shù)
            var lenBoth = len1 * len2;
            //  申明一個(gè)新數(shù)組
            var items = new Array(lenBoth);
            // 申明新數(shù)組的索引
            var index = 0;
            for (var i=0; i<len1; i++) {
                for (var j=0; j<len2; j++) {
                    if(arr[0][i] instanceof Array){
                        items[index] = arr[0][i].concat(arr[1][j]);
                    }else{
                        items[index] = [arr[0][i]].concat(arr[1][j]);
                    }
                    index++;
                }
            }
            var newArr = new Array(len -1);
            for(var i=2;i<arr.length;i++) {
                newArr[i-1] = arr[i];
            }
            newArr[0] = items;
            return doExchange(newArr); // 遞歸
        }else{
            return arr[0];
        }
  }

    // 數(shù)組組合方法參考 https://www.cnblogs.com/linJie1930906722/p/6854517.html
</script>

<style>
input {
  width: 40px;
}
</style>

</html>
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子存璃,更是在濱河造成了極大的恐慌仑荐,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,544評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件纵东,死亡現(xiàn)場離奇詭異粘招,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)偎球,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,430評論 3 392
  • 文/潘曉璐 我一進(jìn)店門洒扎,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人衰絮,你說我怎么就攤上這事袍冷。” “怎么了岂傲?”我有些...
    開封第一講書人閱讀 162,764評論 0 353
  • 文/不壞的土叔 我叫張陵难裆,是天一觀的道長。 經(jīng)常有香客問我镊掖,道長乃戈,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,193評論 1 292
  • 正文 為了忘掉前任亩进,我火速辦了婚禮症虑,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘归薛。我一直安慰自己谍憔,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,216評論 6 388
  • 文/花漫 我一把揭開白布主籍。 她就那樣靜靜地躺著习贫,像睡著了一般。 火紅的嫁衣襯著肌膚如雪千元。 梳的紋絲不亂的頭發(fā)上苫昌,一...
    開封第一講書人閱讀 51,182評論 1 299
  • 那天,我揣著相機(jī)與錄音幸海,去河邊找鬼祟身。 笑死,一個(gè)胖子當(dāng)著我的面吹牛物独,可吹牛的內(nèi)容都是我干的袜硫。 我是一名探鬼主播,決...
    沈念sama閱讀 40,063評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼挡篓,長吁一口氣:“原來是場噩夢啊……” “哼婉陷!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,917評論 0 274
  • 序言:老撾萬榮一對情侶失蹤憨攒,失蹤者是張志新(化名)和其女友劉穎世杀,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體肝集,經(jīng)...
    沈念sama閱讀 45,329評論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡瞻坝,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,543評論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了杏瞻。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片所刀。...
    茶點(diǎn)故事閱讀 39,722評論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖捞挥,靈堂內(nèi)的尸體忽然破棺而出浮创,到底是詐尸還是另有隱情,我是刑警寧澤砌函,帶...
    沈念sama閱讀 35,425評論 5 343
  • 正文 年R本政府宣布斩披,位于F島的核電站,受9級特大地震影響讹俊,放射性物質(zhì)發(fā)生泄漏垦沉。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,019評論 3 326
  • 文/蒙蒙 一仍劈、第九天 我趴在偏房一處隱蔽的房頂上張望厕倍。 院中可真熱鬧,春花似錦贩疙、人聲如沸讹弯。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,671評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽组民。三九已至,卻和暖如春悲靴,著一層夾襖步出監(jiān)牢的瞬間臭胜,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,825評論 1 269
  • 我被黑心中介騙來泰國打工对竣, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留庇楞,地道東北人榜配。 一個(gè)月前我還...
    沈念sama閱讀 47,729評論 2 368
  • 正文 我出身青樓否纬,卻偏偏與公主長得像蛋褥,于是被迫代替她去往敵國和親膜廊。 傳聞我的和親對象是個(gè)殘疾皇子乏沸,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,614評論 2 353

推薦閱讀更多精彩內(nèi)容

  • 公歷2017年3月2日。還差半個(gè)月不到,是我26歲的公歷生日消略。都說,女人一旦過了25歲胎撤,像是邁過了一道坎,與青春靚...
    夜里飛行的貓閱讀 334評論 1 2
  • 記者去采訪一位九十三歲的老壽星介汹,希望他能講講長壽的秘訣。老壽星說:“我不抽煙、也不喝酒豪娜、從來都不亂發(fā)脾氣”,正說著...
    梓毓爸閱讀 204評論 0 0
  • 記得多年前看過的一本書《刺猬的優(yōu)雅》惩阶,里面的主人公是一位身材臃腫锨匆,頭發(fā)凌亂,其貌不揚(yáng)且孀居多年的門房老太荷妮...
    希茉ximo閱讀 589評論 0 1
  • 我從小有個(gè)愿望就是希望長大之后當(dāng)一名優(yōu)秀的中學(xué)老師玷禽。我出生于教師家庭。從我懂事開始父母從早上一起去學(xué)校到晚...
    夜空守望者1126閱讀 339評論 1 1
  • 知行合一 兩日前瘫寝,突如其來的興致或說決心咪啡,留下段現(xiàn)在看來不甚有味道的文字。不過倒能多少記錄當(dāng)時(shí)的心情准夷。 文字寫下次...
    3e7598d49cbc閱讀 251評論 0 0