巨大的JavaScript嵌套导致冻结的循环

时间:2016-11-09 01:16:29

标签: javascript

我的程序有9个嵌套for循环,为了遍历我所拥有的452个元素的列表的每个排列,将它们分配给正确的(9个中的1个)变量。

  1. 第一个for循环有67个潜在候选人
  2. 第二个for循环有112
  3. 111
  4. 147
  5. 146
  6. 145
  7. 100
  8. 444
  9. 26
  10. for(a = 0; a < 67; a++){
      var1 = arr[a]
    
      for(b = 0; b < 112; b++){
        var2 = arr[b]
    
        for(c = 0; c < 111; c++){
          var3 = arr[c]
    
          for(d = 0; d < 147; d++){
            var4 = arr[d]
    
            for(e = 0; e < 146; e++){
              var5 = arr[e];
    
              for(f = 0; f < 145; f++){
                var6 = arr[f];
    
                for(g = 0; g < 100; g++){
                  var7 = arr[g];
    
                  for(h = 0; h < 444; h++){
                    var8 = arr[h];
    
                    for(i = 0; i < 26; i++){
                      var9 = arr[i];
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
    

    很明显,我的手指和我的浏览器运行的次数太多了。如何更好地处理这个?排列/可能结果的数量显然非常高。

    编辑:用我的手指做了一些数学,并得出了可能的2,992,335,707,297,664,000结果。我想这有可能是错的,考虑到我的手指不能移动,这只是令人失望......

    Edit2:添加了循环以及它如何按字面分配变量这么多次你哭。不确定为什么代码编辑器不喜欢我的代码,因此没有正确格式化。我不喜欢它。

0 个答案:

没有答案