Iam_Sandeep

iterative pre order in order post order

Oct 28th, 2021 (edited)
976
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.95 KB | None | 0 0
  1.    def postorderTraversal(self, root: Optional[TreeNode]) -> List[int]:
  2.         if not root:
  3.             return []
  4.         s=[root]
  5.         res=[]
  6.         while s:
  7.             t=s.pop()
  8.             if t.left:
  9.                 s.append(t.left)
  10.             if t.right:
  11.                 s.append(t.right)
  12.             res.append(t.val)
  13.         return res[::-1]
  14.  
  15. Inorder:
  16.     def InOrder(self,root):
  17.         ans,st=[],[]
  18.         cur=root
  19.         while cur or st:
  20.             if cur==None:
  21.                 cur=st.pop()
  22.                 ans.append(cur.data)
  23.                 cur=cur.right
  24.             else:
  25.                 st.append(cur)
  26.                 cur=cur.left
  27.         return ans
  28.  
  29. def preorder(root):
  30.     res,st=[],[]
  31.     cur=root
  32.     while st or cur:
  33.         if cur==None:
  34.             cur=st.pop()
  35.             cur=cur.right
  36.         else:
  37.             res.append(cur.data)
  38.             st.append(cur)
  39.             cur=cur.left
  40.     return res
Add Comment
Please, Sign In to add comment