如何处理从0到2 ^ 95的循环?

Čes*_*pan 0 loops

我的问题如下:

我必须遍历95个元素的所有可能性(0或1).

例如,如果有2个元素,则可能性为:00,01,10,11

总可能性的数量是2 ^ n,因此它增长得非常快.2 ^ 95 = 39614081257132168796771975168

我如何有效地从0迭代到2 ^ 95?

PS选择编程语言并不重要,但我猜C或C++应该是最快的选择.

PPS我认为BigInt实现似乎比原始类型慢得多,将数字拆分为X个基元可能是个好主意.到目前为止我没有运气.

PPS我有一个功能,它可以通过提供0到2 ^ 95的数字来产生可能性

Kei*_*son 8

现代CPU以几千兆赫的速度运行,因此您可以每秒迭代超过十亿个值(如果您没有做太多其他事情).

每秒10亿次迭代,需要超过1.2万亿年才能达到2 95次迭代.

你需要找到一种不同的方式去做你正在做的事情.