我的工作我的方式,通过格雷厄姆赫顿的哈斯克尔的书,并在他的递归章中,他经常上“N + 1”的格局,比赛,如:下面为什么Haskell“'n + 1'和'n'”中的递归习惯用法不是''n'和'n-1'“?
myReplicate1 0 _ = []
myReplicate1 (n+1) x = x : myReplicate1 n x
为什么,而不是哪(1)似乎是在理解方面功能相同;(2)更直观发生的事情与递归:
myReplicate2 0 _ = []
myReplicate2 n x = x : myReplicate2 (n-1) x
有我丢失的东西吗?或者这只是一个风格问题?
换句话说,这是一个风格问题,第一种风格已被弃用。:) – 2010-05-06 21:39:38
是的,只是编辑它:) – LukeN 2010-05-06 21:40:40
他们实际上是不一样的。 n + k模式不匹配负数。 – sepp2k 2010-05-06 21:44:01