(python的坑,坑的我头晕,下行循环写后根遍历)
總是提示越界錯誤
IndexError: list index out of range
### if s and s[-1].left == t:
需要先判斷s是否為空,假如:if s[-1].left == t and s就會出現(xiàn)越界。
## 邊界條件的非常非常重要!!!!
## 代碼如下:
```python
class Solution(object):
? ? def postorderTraversal(self, root):
? ? ? ? """
? ? ? ? :type root: TreeNode
? ? ? ? :rtype: List[int]
? ? ? ? """
? ? ? ? ans = []
? ? ? ? s = []
? ? ? ? t = root
? ? ? ? temp =t.item
? ? ? ? while t is not None or s:
? ? ? ? ? ? while t is not None:
? ? ? ? ? ? ? ? s.append(t)
? ? ? ? ? ? ? ? t = t.left if t.left is not None else t.right
? ? ? ? ? ??
? ? ? ? ? ? t = s.pop()
? ? ? ? ? ? ans += [t.item]
? ? ? ? ? ? print ans
? ? ? ? ?
? ? ? ? ? ? if s and s[-1].left == t:
? ? ? ? ? ? ? ? t = s[-1].right
? ? ? ? ? ? else:
? ? ? ? ? ? ? ? t = None
? ? ? ? ? ? ? ??
? ? ? ? return ans
總結(jié)
以上是生活随笔為你收集整理的(python的坑,坑的我头晕,下行循环写后根遍历)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: WaveNet原理简单理解
- 下一篇: Binary Tree Traveras