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

题目:

题解:

python 复制代码
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
相关推荐
Laravel技术社区1 小时前
pytesseract 中英文 识别图片文字
python
生骨大头菜2 小时前
使用python实现相似图片搜索功能,并接入springcloud
开发语言·python·spring cloud·微服务
绝不收费—免费看不了了联系我2 小时前
Fastapi的单进程响应问题 和 解决方法
开发语言·后端·python·fastapi
xqqxqxxq2 小时前
背单词软件技术笔记(V2.0扩展版)
java·笔记·python
最晚的py2 小时前
Python抓取ZLibrary元数据
爬虫·python
咖啡续命又一天2 小时前
Trae CN IDE 中 Python 开发的具体流程和配置总结
开发语言·ide·python·ai编程
IT·小灰灰4 小时前
告别“翻墙“烦恼:DMXAPI让Gemini-3-pro-thinking调用快如闪电
网络·人工智能·python·深度学习·云计算
山海青风4 小时前
语音合成 - 用 Python 合成藏语三大方言语音
开发语言·python·音视频
mikejahn4 小时前
爬取CECS网站征求意见栏目的最新信息
python
占疏4 小时前
dify API访问工作流/聊天
开发语言·数据库·python