论坛树状结构的展现

10-05-03 chaisencs
请问展现树状结构的时候一定要用递归吗?用递归有什么好处?不用递归有什么弊端?

求高人指教。谢谢

1
wkblackman
2010-05-03 12:33
树状结构是一种无穷的结构,而这种无穷结构用递归是最合适的。当然利用堆栈也能解决这个问题,并且速度快,但是是递归分为两种一种是线性递归也就是平常我们所熟悉的递归方式,而且速度慢,另外一种是尾递归而这种方法完全解决了递归中的速度问题。另外楼主提到了实际的论坛应用,那么还有一种巧妙的方法,就是添加额外的字段来解决,比如添加left和right节点,这个你可以具体参考MPTT logic这种数据结构来解决这个问题。

atester
2010-05-04 10:47
2010年05月03日 12:33 "wkblackman"的内容
树状结构是一种无穷的结构,而这种无穷结构用递归是最合适的。当然利用堆栈也能解决这个问题,并且速度快,但是是递归分为两种一种是线性递归也就是平常我们所熟悉的递归方式,而且速度慢,另外一种是尾递归而这种方法完全解决了递归中的速度问题。另外楼主提 ...

又见高手...

猜你喜欢