我有一些代码,被设计在一个列表更新在单个列表元素的列表清单?
replaceNth n newVal (x:xs)
| n == 0 = newVal:xs
| otherwise = x:replaceNth (n-1) newVal xs
例如,要更换一个值,当我加载将该函数GHCI,输入并得到如下:
*Main> replaceNth 3 4 [3,3,3,3,3]
[3,3,3,4,3]
不过我我试图在列表中使用这个函数来创建多个列表,而且似乎无法这样做(例如)。
我想要的是得到这样一个结果:
[[3,3,3,3,3],[3,3,3,**2**,3],[3,3,3,3,3]]
从这[3,3,3,3,3],[3,3,3,3,3],[ 3,3,3,3,3]
使用类似上述的功能。
类型此列表替换功能的是你原来的替换功能略有不同,因为它现在替换元素2级深。 – 2011-05-02 17:59:56