题目描述:

方法一:迭代

class Solution:def flatten(self, root: TreeNode) -> None:"""Do not return anything, modify root in-place instead."""cur = root while cur: if cur.left: p = cur.left while p.right: p = p.right p.right = cur.right cur.right = cur.left cur.left = None cur = cur.right

方法二:递归

class Solution:def flatten(self, root: TreeNode) -> None:"""Do not return anything, modify root in-place instead."""def helper(root, pre): if not root: return pre # 记录遍历时候,该节点的前一个节点 pre = helper(root.right, pre) pre = helper(root.left, pre) # 拼接 root.right = pre root.left = None pre = root return pre helper(root, None)

转载于:https://www.cnblogs.com/oldby/p/11185508.html

leetcode-114-二叉树展开为链表*相关推荐

  1. LeetCode 114. 二叉树展开为链表(递归)

    1. 题目 给定一个二叉树,原地将它展开为链表(右侧路径). 例如,给定二叉树1/ \2 5/ \ \ 3 4 6 将其展开为:1\2\3\4\5\6 来源:力扣(LeetCode) 链接:https ...

  2. Leetcode 114.二叉树展开为链表

    Time: 20190901 Type: Medium 题目描述 给定一个二叉树,原地将它展开为链表. 例如,给定二叉树 1/ \2 5/ \ \ 3 4 6 将其展开为: 1\2\3\4\5\6 来 ...

  3. LeetCode 114 二叉树展开为链表

    题目链接:力扣​​​​​​ 思路:递归 递归函数声明: void flatten(TreeNode* root); 递归出口: 如果根节点为空,返回(不操作) 如果只有根节点,返回 (不操作) 递归体 ...

  4. Leetcode 114. 二叉树展开为链表 解题思路及C++实现

    解题思路: 使用递归的方法.根结点的左子树中,最右边的节点是左子树成为链表后的最后一个节点,找到这个节点,然后把这个节点的右节点指向根结点的右子树,同时,将根结点右子节点指向其左子节点,根结点的左子节 ...

  5. 【LeetCode】【HOT】114. 二叉树展开为链表(原地置换)

    [LeetCode][HOT]114. 二叉树展开为链表 文章目录 [LeetCode][HOT]114. 二叉树展开为链表 package hot;import java.util.ArrayLis ...

  6. java二叉树转换为链表_leetcode刷题笔记-114. 二叉树展开为链表(java实现)

    leetcode刷题笔记-114. 二叉树展开为链表(java实现) 题目描述 给你二叉树的根结点 root ,请你将它展开为一个单链表: 展开后的单链表应该同样使用 TreeNode ,其中 rig ...

  7. 力扣114. 二叉树展开为链表(C++,解释一下别人的思路)

    题目链接: 114. 二叉树展开为链表 - 力扣(LeetCode) (leetcode-cn.com)https://leetcode-cn.com/problems/flatten-binary- ...

  8. 114. 二叉树展开为链表 golang

    114. 二叉树展开为链表 给定一个二叉树,原地将它展开为链表. 例如,给定二叉树 1/ \2 5/ \ \ 3 4 6 将其展开为: 1\2\3\4\5\6 Code /*** Definition ...

  9. leetocde —— 114. 二叉树展开为链表

    给定一个二叉树,原地将它展开为链表. 例如,给定二叉树 -------- 解题思路:借鉴windliang发布在leetcode题解上的第一个思路,利用先序遍历,将二叉树展开成一个链表. 将左子树插入 ...

  10. 【LeetCode笔记】114. 二叉树展开为链表(Java、递归)

    文章目录 题目描述 解法 & 思路 思路一 思路二 题目描述 我佛了,这道题挺描述不明的,有坑,过不了oj建议马上看评论 or 题解 解法 & 思路 思路一 代码就不贴了,过不去 先序 ...

最新文章

  1. 《Python Cookbook》 最佳译本开放下载啦!
  2. p2p項目”復活“之想
  3. TF-IDF与余弦相似性的应用(三):自动摘要
  4. 机器学习算法源码全解析(二)-范数规则化之L0、L1与L2范数
  5. 如何在一年内拥有十年的工作经验(值得你反复读5遍以上)
  6. c语言对中文字符串编码_Python || 学习笔记(1):数据类型字符串变量和编码
  7. REVERSE-PRACTICE-CTFSHOW-6
  8. (97)FPGA手写RAM(Verilog)
  9. java 弹性碰撞_球体弹性碰撞位置和速度计算算法
  10. html网页中获取vf数据到mysql_怎样从HTML网页中获取SQL数据库里的数据
  11. 论文多个实验时VS或Unity工程需要每次新建吗?
  12. 网吧管理软件常见漏洞四节课
  13. java 将cad文件转化成pdf或图片,实现在线预览
  14. 计算机怎么关闭u盘系统还原,电脑系统还原错误怎么办
  15. 网易云音乐插件现已登陆 Visual Studio Code
  16. Pentest WiKi Part1 信息收集
  17. EtherCAT从站读取MPU9250数据并进行姿态解算
  18. 内蒙古大学计算机考研复试分数线,内蒙古大学2013-2014考研复试分数线.docx
  19. linux查看是否开启超线程
  20. Ceph分布式存储系统架构研究综述

热门文章

  1. python爬虫爬图片教程_python爬虫实战之爬取京东商城实例教程
  2. SCI论文写作训练营笔记汇总03_科技论文写作(方法篇)
  3. 【Pytorch神经网络基础理论篇】 03 数据操作 + 数据预处理
  4. mysql数据库架构_MySQL数据库之互联网常用架构方案
  5. js调用vlc_如何使用HTML5或JavaScript查看RTSP流,而不使用Real Player插件上的VLC插件等插件?...
  6. 基于sklearn.decomposition.TruncatedSVD的潜在语义分析实践
  7. LeetCode 1277. 统计全为 1 的正方形子矩阵(DP)
  8. LeetCode 263. 丑数 264. 丑数 II(DP)
  9. LeetCode 892. 三维形体的表面积(数学)
  10. 石头剪刀布程序流程图_机器学习终章:剪刀石头布猜拳机器人