目录链接:

力扣编程题-解法汇总_分享+记录-CSDN博客

GitHub同步刷题项目:

https://github.com/September26/java-algorithms

https://github.com/September26/java-algorithms

原题链接:力扣

描述:

你需要采用前序遍历的方式,将一个二叉树转换成一个由括号和整数组成的字符串。

空节点则用一对空括号 "()" 表示。而且你需要省略所有不影响字符串与原始二叉树之间的一对一映射关系的空括号对。

示例 1:

输入: 二叉树: [1,2,3,4]
       1
     /   \
    2     3
   /    
  4

输出: "1(2(4))(3)"

解释: 原本将是“1(2(4)())(3())”,
在你省略所有不必要的空括号对之后,
它将是“1(2(4))(3)”。
示例 2:

输入: 二叉树: [1,2,3,null,4]
       1
     /   \
    2     3
     \  
      4

输出: "1(2()(4))(3)"

解释: 和第一个示例相似,
除了我们不能省略第一个对括号来中断输入和输出之间的一对一映射关系。

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/construct-string-from-binary-tree
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

解题思路:

* 解题思路:
* 今天这题没有描述清楚。规则少了一条,应该是左节点为空,右节点不为空时,左节点要记录成()。
* 首先递归的方式进行前序遍历,使用stringbuilder记录

代码:

public class Solution606 {public String tree2str(TreeNode root) {StringBuilder builder = new StringBuilder();search(root, builder);return builder.toString();}private void search(TreeNode root, StringBuilder builder) {if (root == null) {return;}builder.append(root.val);//左节点为空,右节点不为空时,左节点要记录成()if (root.left != null || root.right != null) {builder.append("(");search(root.left, builder);builder.append(")");}//右节点为空就不记录if (root.right != null) {builder.append("(");search(root.right, builder);builder.append(")");}}}

​力扣解法汇总606-根据二叉树创建字符串相关推荐

  1. 题目:606.根据二叉树创建字符串

    ​ ​题目来源: leetcode题目,网址:606. 根据二叉树创建字符串 - 力扣(LeetCode) 解题思路: 递归遍历二叉树,按要求输出即可. 解题代码: /*** Definition f ...

  2. LeetCode Algorithm 606. 根据二叉树创建字符串

    606. 根据二叉树创建字符串 Ideas 把我珍藏多年的二叉树前序遍历代码模板呈上来: def preorderTraversalLoop(node):if not node:returnstack ...

  3. LeetCode 606. 根据二叉树创建字符串题解

    606. 根据二叉树创建字符串题解 题目来源:606. 根据二叉树创建字符串 2022.03.19 每日一题 LeetCode 题解持续更新中Github仓库地址 CSDN博客地址 在开始本题之前,可 ...

  4. 【浅刷Java数据结构】Leetcode 606 根据二叉树创建字符串

    链接: Leetcode 606 根据二叉树创建字符串 整体思路: 题目要求按照前序遍历的方式遍历.(根(左子树)(右子树)) 根为空直接返回. 根不为空时:看左右子树是否空,就可以分类讨论: 左树为 ...

  5. 606.根据二叉树创建字符串

    题目 606.根据二叉树创建字符串 题目大意 你需要采用前序遍历的方式,将一个二叉树转换成一个由括号和整数组成的字符串. 空节点则用一对空括号 "()" 表示.而且你需要省略所有不 ...

  6. LeetCode 每日一题:606. 根据二叉树创建字符串

    606. 根据二叉树创建字符串 二叉树的前序遍历,当左子节点或者右节点非空的时候需要添加左子节点的括号,如果右子节点非空才需要添加右子节点的括号 /*** Definition for a binar ...

  7. 【LeetCode】606.根据二叉树创建字符串

    链接: [LeetCode]606.根据二叉树创建字符串 思路 使用二叉树的中序遍历,需要注意的是当左节点为空,右节点不为空的时候要加上(). 代码 class Solution { public:s ...

  8. ​力扣解法汇总1110. 删点成林

    目录链接: 力扣编程题-解法汇总_分享+记录-CSDN博客 GitHub同步刷题项目: GitHub - September26/java-algorithms: 算法题汇总,包含牛客,leetCod ...

  9. ​力扣解法汇总856. 括号的分数

    目录链接: 力扣编程题-解法汇总_分享+记录-CSDN博客 GitHub同步刷题项目: https://github.com/September26/java-algorithms 原题链接:力扣 描 ...

最新文章

  1. 了解React.js中数组子项的唯一键
  2. java维吉尼亚密码_java实现维吉尼亚加密/解密算法 | 学步园
  3. 结对开发----找出“水王
  4. JavaScript实现bellmanFord贝尔曼-福特算法(附完整源码)
  5. golang map使用总结
  6. 转:android 避免内存泄露
  7. SPT20 协议_过户协议书模板五篇
  8. Python的主要功能是什么?
  9. 谷歌发布GPhone 创始人亲自上阵
  10. 4怎么打开项目_苹果电脑怎么把文件复制到u盘
  11. winscp自动执行脚本
  12. 计算机教室网络同传及保护,方正网络同传软件安装及后期使用全解.ppt
  13. 一起学 Unix 环境高级编程 (APUE) 之 信号
  14. python 读写tiff文件
  15. phpdesigner8 php7.0,让getter和setter在phpDesigner8中运行
  16. 机器学习项目一:共享单车
  17. MCAL系列介绍04-GPT
  18. 绿色IT十大攻略:营建企业绿色IT环境
  19. Mentor Expedition如何极坐标旋转添加器件?
  20. PS-第十二天-PS色阶的使用原理浅谈

热门文章

  1. 态℃ |一条毛巾在拼多多的新消费奇遇记
  2. android b571 版本,HUAWEI Mate 7 EMUI 4.0.1 B571 版本发布说明及问题反馈
  3. 大数据分析与应用(中级) 大数据分析概述
  4. IT码农进入日企之路——模拟试题
  5. 《联盟-互联网时代的人才变革》读后感
  6. 已有打开的与此 Command 相关联的 DataReader,必须首先将它关闭。
  7. 万马齐喑究可哀-中文编程的又一波讨论
  8. TS3180打印机喷头堵塞以及打印照片颜色偏暗完美解决
  9. 【UV打印机】理光喷头组合说明(5H)
  10. This version of the JDBC driver is only compatible with Elasticsearch version 7.9 or newer; attempti