如何在Python中实现一个循环,它返回树枝的索引,以及每层深度的树枝数按层深度增长到n的幂?N和层深均为整数。
例如,对于n=2,这将产生前三层的树枝数(在黑匣子中给出的指数):
0层深度: 2**0=1
层深1: 2**1=2
层深2: 2**2=4

例如,对于n=3,这将产生前三层的树枝数(在黑匣子中给出的指数):
0层深度: 3**0=1
层深1: 3**1=3
层深2: 3**2=9

发布于 2020-12-13 20:47:39
我认为下面的生成器产生了您的图像显示的内容:
def branching(n, depth):
yield '1'
if depth >= 1:
branches = []
for i in range(1, n + 1):
branches.append(f'1.{i}')
yield branches[-1]
for layer in range(2, depth + 1):
branches_new = []
for branch in branches:
for i in range(1, n**(layer - 1) + 1):
branches_new.append(f'{branch}.{i}')
yield branches_new[-1]
branches = branches_new这
for branch in branching(2, 3):
print(branch)产生
1
1.1
1.2
1.1.1
1.1.2
1.2.1
1.2.2
1.1.1.1
1.1.1.2
1.1.1.3
1.1.1.4
1.1.2.1
1.1.2.2
1.1.2.3
1.1.2.4
1.2.1.1
1.2.1.2
1.2.1.3
1.2.1.4
1.2.2.1
1.2.2.2
1.2.2.3
1.2.2.4对于branching(3, 3),输出如下所示
1
1.1
1.2
1.3
1.1.1
1.1.2
1.1.3
1.2.1
1.2.2
1.2.3
1.3.1
1.3.2
1.3.3
1.1.1.1
1.1.1.2
1.1.1.3
1.1.1.4
1.1.1.5
1.1.1.6
1.1.1.7
1.1.1.8
1.1.1.9
...
1.3.3.1
1.3.3.2
1.3.3.3
1.3.3.4
1.3.3.5
1.3.3.6
1.3.3.7
1.3.3.8
1.3.3.9但我有点觉得你的公式化的描述和图像不太一致?
https://stackoverflow.com/questions/65270366
复制相似问题