0
我想编写一个函数来生成一个包含n乘n格的坐标的元组列表。在Haskell中生成网格坐标的元组
例如:
> genGrid 2
[(0,0),(0,1),(1,0),(1,1)]
> genGrid 3
[(0,0),(0,1),(0,2),(1,0),(1,1),(1,2),(2,0),(2,1),(2,2)]
我知道我可以做产生的对角线以下:
genDiagonal n = zip [0..] [0..n-1]
我想有一个相当简单的方法来做到这一点,也许一个变种我的对角线功能,但我会空白。
'[(X,Y)| x < - [0..n-1],y < - [0..n-1]]'为行主要,或'[(y,x)...]'为列主要。 – Mephy
也看到[这个问题](http://stackoverflow.com/questions/8029046/),它会生成确切的期望输出(尽管这是一个不同的问题)。 – Mephy
'grid d n = sequence $ replicate d [0..n]'将产生一个尺寸为'n'的'd'维网格。这可以被部分地评估以获得2维网格'2dGrid =网格2'。 –