关注
构建二叉树 mirror中序遍历 A了
static String solution(String input) {
TreeNode node = solutionSub(input);
String result = treeMid(node);
return result;
}
public static String treeMid(TreeNode head) {
StringBuilder sb = new StringBuilder();
if (head == null) return null;
TreeNode cur1 = head;
TreeNode cur2 = null;
while (cur1 != null) {
cur2 = cur1.left;
if (cur2 != null) {
while (cur2.right != cur1 && cur2.right != null) {
cur2 = cur2.right;
}
if (cur2.right != cur1) {
cur2.right = cur1;
cur1 = cur1.left;
continue;
} else {
cur2.right = null;
}
}
sb.append(cur1.val);
cur1 = cur1.right;
}
return sb.toString();
}
static TreeNode solutionSub(String input) {
if (input == null || input.length() == 0) return null;
Integer i = Integer.valueOf(input.substring(0, 1));
TreeNode node = new TreeNode(i);
if (input.length() > 1) {
String child = input.substring(2, input.length() - 1);
int left = 0;
int right = 0;
int mid = 0;
for (int j = 0; j < child.length(); j++) {
if (child.charAt(j) == '(') {
left++;
continue;
}
if (child.charAt(j) == ')') {
right++;
continue;
}
if (child.charAt(j) == ',' && left == right) {
mid = j;
break;
}
}
String leftChild = child.substring(0, mid);
String rightChild = child.substring(mid + 1);
TreeNode le = solutionSub(leftChild);
TreeNode ri = solutionSub(rightChild);
node.left = le;
node.right = ri;
}
return node;
}
查看原帖
点赞 评论
相关推荐
eta!0413:百度:我们只是在“优化用户体验”🙃 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 实习的你做了哪些离谱的工作 #
3054次浏览 50人参与
# 工作压力大,你会干什么? #
2651次浏览 78人参与
# MiniMax求职进展汇总 #
1358次浏览 25人参与
# 参加哪些竞赛对找工作有帮助? #
3029次浏览 65人参与
# 找实习记录 #
6181次浏览 123人参与
# 我的付费上班经历 #
4946次浏览 93人参与
# 邪修省钱套路 #
2038次浏览 81人参与
# AI让你的思考变深了还是变浅了? #
863次浏览 31人参与
# 如果不上班,你会去做什么 #
2005次浏览 75人参与
# 为了入行xx岗,我学了__ #
1713次浏览 33人参与
# 简历第一个项目做什么 #
1736次浏览 43人参与
# 你找工作的时候用AI吗? #
167408次浏览 868人参与
# 毕业论文进行时 #
24760次浏览 146人参与
# 如何排解工作中的焦虑 #
257450次浏览 2375人参与
# 大厂面试初体验 #
86569次浏览 398人参与
# 毕业旅行去哪玩儿 #
21846次浏览 148人参与
# 硬件人秋招进展 #
265484次浏览 3971人参与
# 你觉得面试是靠实力还是靠运气 #
27450次浏览 311人参与
# 影石Insta360求职进展汇总 #
170616次浏览 1347人参与
# 你们的毕业论文什么进度了 #
1235787次浏览 9923人参与
# 记录实习开销 #
175414次浏览 670人参与