跳到主要内容

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

链接:606.根据二叉树创建字符串
难度:Medium
标签:树、深度优先搜索、字符串、二叉树
简介:给定一棵二叉树,你需要计算它的直径长度。一棵二叉树的直径长度是任意两个结点路径长度中的最大值。这条路径可能穿过也可能不穿过根结点。

题解 1 - cpp

  • 编辑时间:2022-03-15
  • 执行用时:32ms
  • 内存消耗:64.2MB
  • 编程语言:cpp
  • 解法介绍:遍历后组装。
class Solution {
public:
string tree2str(TreeNode* root) {
if (!root) return "";
string l = "(" + tree2str(root->left) + ")",
r = "(" + tree2str(root->right) + ")";
return to_string(root->val) + (l == "()" && r == "()" ? ""
: l != "()" && r == "()" ? l
: l + r);
}
};