我在理解实现Fannkuch的说明时遇到了麻烦。
说明:http://www.haskell.org/haskellwiki/Shootout/Fannkuch
步骤“计算翻转次数,这里是5”之后,我迷路了。
最佳答案
哇,是的,这不是最出色的算法描述:)。
我的解释是他们希望您执行以下操作:
fannkuch(n){
int maxFlips = 0,printCount = 0;
[1..n] {
maxFlips = max(maxFlips,flipCount(p));
如果(printCount++ }
打印(maxFlips);
}
flipCount(p){
int count = 0;
而(p [0]!= 1){
反转(p,p + p [0]);
数++;
}
返回计数;
}