
LeetCode114.二叉树展开为链表[后序遍历典例]
发布日期:2025-04-05 03:11:52
浏览次数:8
分类:精选文章
本文共 728 字,大约阅读时间需要 2 分钟。
这道题首先要思考,肯定要用遍历二叉树,但是要用哪个遍历呢
最好的方法应该是后序遍历,把根结点放在最后一步访问
自底而上的方式顺序来重建链表
记得将右子树备份,左子树置空;
将左子树赋值给右子树,找到右子树的最后一个结点,把原来的右子树重新接上去
这样可以避免最后结果右子树顺序颠倒的问题
/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */class Solution {public: void flatten(TreeNode* root) { if(root==NULL) return; //后序遍历 flatten(root->left); flatten(root->right); TreeNode* r = root->right;//将右子树备份 root->right = root->left; root->left = NULL;//将左子树置空 while(root->right!=NULL)//找到右子树最后一个结点 root = root->right; root->right = r;//把原来的右子树接上去 }};
发表评论
最新留言
逛到本站,mark一下
[***.202.152.39]2025年04月24日 21时32分38秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
Kubernetes实战(三十一)-Calico网络部署(推荐)
2023-01-29
Kubernetes实战(三十三)-外部Etcd集群部署与调优(更安全的数据存储策略)
2023-01-29
Kubernetes实战(三)-定向调度(NodeSelector)
2023-01-29
Kubernetes实战(二十九)-集群资源管理(CPU & Memory)
2023-01-29
Kubernetes实战(二十二)-Etcd 集群部署(安全)
2023-01-29
Kubernetes实战(二十八)-环境共享与隔离(Namespace)
2023-01-29
Kubernetes实战(十五)-敏感数据管理(Secret)
2023-01-29
Kubernetes对接Ceph存储实现云原生持久化
2023-01-29
Kubernetes对象Service详解
2023-01-29
kubernetes常用工具
2023-01-29
Kubernetes快速上手:部署、使用及核心概念解析
2023-01-29
Kubernetes故障排查与面试汇总
2023-01-29
Kubernetes故障排查实战
2023-01-29
kubernetes混合云平台运维实战项目分享
2023-01-29
kubernetes社区项目生态概览
2023-01-29