思路:
# 先中序遍历,将所有的节点保存到一个列表中。对这个list[:-1]进行遍历,
# 每个节点的right设为下一个节点,下一个节点的left设为上一个节点。
class Solution: def Convert(self , pRootOfTree ): # write code here if not pRootOfTree: return None self.arr = [] self.midTraversal(pRootOfTree) for i,v in enumerate(self.arr[:-1]): v.right = self.arr[i+1] self.arr[i+1].left = v return self.arr[0] def midTraversal(self,root): if not root: return self.midTraversal(root.left) self.arr.append(root) self.midTraversal(root.right)