递归算法返回递归QuadTree的嵌套结构

时间:2014-10-29 15:37:41

标签: python recursion quadtree

我一直在使用来自http://www.astroml.org/book_figures/chapter2/fig_quadtree_example.html

的这个复发四叉树

关于一些数据。但我现在需要一个结果结构的嵌套表示。

结构类似于:

QT.children[0].children[0].children[0].children

这里的子节点是递归元素,它是一个包含更多QuadTree()个实例的列表。最低深度没有子节点(len(children)为0)并且是我想要访问的表示。因此,在这种情况下访问我会做的数据

>>> print QT.children[0].children[0].children[0].data

'hello this is from 0,0,0'

最终我希望在最低级别表示数据,如:

[ [
    [  
      ['Hello this is from 0,0,0'],
      ['hello this is from 0,0,1'] 
    ],
    [
      ['hello this is from 0,1,0' ]
    ]
   ]
   ['hello this is from 1' ]
]   

1 个答案:

答案 0 :(得分:0)

要修改对象的表示,必须覆盖__ repr __函数,该函数返回对象的字符串形式。在您的情况下,您可能希望有一个递归函数,它返回嵌套数据的列表(或数组)并将其用作表示。