Python | Leetcode Python题解之第144题二叉树的前序遍历

题目:

题解:

class Solution:
    def preorderTraversal(self, root: TreeNode) -> List[int]:
        res = list()
        if not root:
            return res
        
        p1 = root
        while p1:
            p2 = p1.left
            if p2:
                while p2.right and p2.right != p1:
                    p2 = p2.right
                if not p2.right:
                    res.append(p1.val)
                    p2.right = p1
                    p1 = p1.left
                    continue
                else:
                    p2.right = None
            else:
                res.append(p1.val)
            p1 = p1.right
        
        return res

最近更新

  1. TCP协议是安全的吗?

    2024-06-11 08:36:02       8 阅读
  2. 【Python教程】压缩PDF文件大小

    2024-06-11 08:36:02       9 阅读
  3. 通过文章id递归查询所有评论(xml)

    2024-06-11 08:36:02       10 阅读

热门阅读

  1. 【Python】易错点——数组;列表;内存分配

    2024-06-11 08:36:02       8 阅读
  2. NLP--朴素贝叶斯

    2024-06-11 08:36:02       5 阅读
  3. vue基础

    vue基础

    2024-06-11 08:36:02      3 阅读
  4. 归并排序!

    2024-06-11 08:36:02       7 阅读
  5. 开源项目学习(6)---- CMake 可执行文件生成

    2024-06-11 08:36:02       7 阅读
  6. 如何发布自己的npm插件包

    2024-06-11 08:36:02       6 阅读
  7. 如何在WPS中加载EndNote X9插件

    2024-06-11 08:36:02       4 阅读
  8. 希尔排序(Shell_sort)

    2024-06-11 08:36:02       7 阅读
  9. MongoDB ObjectId 详解

    2024-06-11 08:36:02       7 阅读