【发布时间】:2016-10-07 14:57:03
【问题描述】:
我想编写一个 JavaScript 程序,以所有可能的排列方式排列一组 36 个数字(每秒 10 个排列)。排列这些数字有 36 种阶乘方式。
我知道我的程序要到世界末日才会结束 :)(这正是我想要展示的)。
它从以下顺序开始:
- 排列:0,1,2,3,4,5,6,...,32,33,34,35
- 排列:0,1,2,3,4,5,6,...,32,33,35,34
- 排列:0,1,2,3,4,5,6,...,32,34,33,35
.....(这里有很多排列)......
有没有一种方法可以计算第 5'595'000'000 次(自 2000 年 1 月 1 日以来的十进制时间)排列而不计算所有以前的排列? 计算以前的那些确实需要永远!
另外,如果我知道第 5'595'000'000 个排列,我需要一种方法来计算下一个排列。
我发现的所有排列算法一次计算所有排列。这不是一个有这么多排列的选项。
这是可能的还是我注定要失败?
【问题讨论】:
-
这是作业问题还是什么?您尝试过的代码在哪里?
标签: javascript algorithm permutation largenumber