gpt4 book ai didi

multidimensional-array - 如何在菱形等轴测图中从后到前迭代

转载 作者:行者123 更新时间:2023-12-04 06:00:05 25 4
gpt4 key购买 nike

想象一个菱形等距图,它基本上是一个以 (x,y) 坐标和顶部单元格为原点的二维数组,如单元格中所标记:

Diamond

我想按以下顺序从后到前遍历这些单元格:

 iteration order

通过未知的同侧 map 以这种方式循环的算法是什么?

预期输出:[0,0]、[0,1]、[1,0]、[0,2]、[1,1]、[2,0]、[0,3]等

最佳答案

python 伪代码:

def iterate_cells(n):
for i in range(n):
for j in range(i+1):
yield (j, i-j)
for i in range(1, n+1):
for j in range(n - i):
yield(i+j, n-j-1)

输出:
In [119]: list(iterate_cells(5))
Out[119]:
[(0, 0),
(0, 1),
(1, 0),
(0, 2),
(1, 1),
(2, 0),
(0, 3),
(1, 2),
(2, 1),
(3, 0),
(0, 4),
(1, 3),
(2, 2),
(3, 1),
(4, 0),
(1, 4),
(2, 3),
(3, 2),
(4, 1),
(2, 4),
(3, 3),
(4, 2),
(3, 4),
(4, 3),
(4, 4)]

关于multidimensional-array - 如何在菱形等轴测图中从后到前迭代,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9018988/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com