what is the best way to generate a cartesian product of some lists, not knowing in advance how many lists there are?如果你愿意,你可以在这里停止阅读.
我没有钱上学,所以我试图在高速公路收费站夜班工作时使用互联网进行一些编程.我决定尝试解决一些"编程挑战"问题作为练习.
这是我要解决的问题,TopCoder的属性:
http://community.topcoder.com/stat?c=problem_statement&pm=3496
Run Code Online (Sandbox Code Playgroud)
我不会复制和粘贴完整的描述以尊重他们的版权声明,但我假设我可以总结它,只要我不逐字使用它(IANAL).
如果历史股票价格的"加权和"是通过将这些价格的子集乘以相等数量的"加权"因子而获得的附加值的总和,前提是后者加起来为1.0,并从给定的有效值集合中选择[-1.0,-0.9,...,0.9,1.0],对作为函数参数提供的所有历史数据使用此公式,一次检查5个价格,预测下一个价格并返回"加权因子"的排列"产生最低的平均预测误差.每次运行至少会有6个股票价格,因此保证至少有一个预测,最终结果应该在1E-9之内准确.
格式:
list格式为下载地址:
import itertools
# For a permutation of factors to be used in a weighted sum, it should be chosen
# such than the sum of all factors is 1. …Run Code Online (Sandbox Code Playgroud) 给定x数组的数量,每个数组可能有不同数量的元素,如何迭代所有组合,我从每个数组中选择一个项目?
例:
[ ] [ ] [ ]
foo cat 1
bar dog 2
baz 3
4
Run Code Online (Sandbox Code Playgroud)
返回
[foo] [cat] [ 1 ]
[foo] [cat] [ 2 ]
...
[baz] [dog] [ 4 ]
Run Code Online (Sandbox Code Playgroud)
我在Perl中这样做,顺便说一下.