博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python 解LeetCode:606 Construct String from Binary Tree
阅读量:4658 次
发布时间:2019-06-09

本文共 841 字,大约阅读时间需要 2 分钟。

  • 题目描述:用先序遍历的方式把二叉树转换成字符串,其中结点用括号分割,具体示例见

  • 思路:
  1. 先序遍历,先把根结点的值转化成字符串,然后递归的把左右子树的值转化成字符串
  2. 把1中的根结点和左右子结点的字符串连接起来就是结果,其中需要注意:
    • 如果右子树存在值,左子树无论有没有值,都需要用()括起来
    • 如果右子树不存在值,左子树只有在存在值的时候才括起来
# Definition for a binary tree node.# class TreeNode(object):#     def __init__(self, x):#         self.val = x#         self.left = None#         self.right = Noneclass Solution(object):    def tree2str(self, t):        """        :type t: TreeNode        :rtype: str        """        if not t:            return ''        root = str(t.val)        left = self.tree2str(t.left)        right = self.tree2str(t.right)        if right:            return root + '(' + left + ')(' + right + ')'        else:            if left:                return root + '(' + left + ')'            else:                return root

转载于:https://www.cnblogs.com/qiaojushuang/p/8167980.html

你可能感兴趣的文章
四川红油的制法
查看>>
Java重写《C经典100题》 --21
查看>>
【Android基础】Fragment 详解之Fragment生命周期
查看>>
链表(裸题)
查看>>
11运算符重载
查看>>
磁盘系统的管理
查看>>
C/S
查看>>
Http Get/Post请求的区别
查看>>
STM32一键下载电路设计原理
查看>>
C语言中函数返回字符串的四种方法
查看>>
10月区块链领域投融资事件盘点
查看>>
Mybatis缓存策略
查看>>
卷积的意义【转】
查看>>
android图形系统详解五:Android绘制模式
查看>>
[剑指offer] 23. 二叉搜索树的后序遍历序列
查看>>
canvas绘画交叉波浪
查看>>
Linux 内核分析
查看>>
试一下:XP ( SP2 ) 本身就支持查杀流氓软件!
查看>>
centos6(7) minimal 基本环境配置
查看>>
P2837晚餐队列安排
查看>>