javascript 算法

一、排列组合

从1-10的数中取出六个数字,能排列出多少组不同的顺序

C10 6公式:(1*2*3*4*5*6*7*8*9*10)/((1*2*3*4)*(1*2*3*4*5*6))

 1 <script>
 2     function arrangement(total, target){    // @total:总的排列数  @target:组合的总数
 3         var nTotal = 1;
 4         var nTarget = 1;
 5         var nNum = 1;
 6         
 7         for(var i=1; i<=total; i++){
 8             nTotal *= i;
 9         }
10         
11         for(var k=1, tar=total-target; k<=tar; k++){
12             console.log(tar);
13             nTarget *= k;
14         }
15         
16         for(var s=1; s<=target; s++){
17             nNum *= s;    
18         }
19         
20         console.log(nTotal,nTarget,nNum)
21         
22         return nTotal/(nTarget*nNum);
23     }
24     
25     var result = arrangement(16, 6);
26     console.log(result);
27 </script>

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。