LintCode-克隆二叉树
来源:互联网 发布:h3c 多个端口删除vlan 编辑:程序博客网 时间:2024/05/17 09:17
题目描述:
深度复制一个二叉树。
给定一个二叉树,返回一个他的 克隆品 。
样例:
给定一个二叉树:
1 / \ 2 3 / \4 5
返回其相同结构相同数值的克隆二叉树:
1 / \ 2 3 / \4 5
做题思路:创建一个新的根节点,把原来的根节点的值赋给新的根结点,利用递归函数,遍历左子树和右子树所有结点的值并赋给新的结点下左子树和右子树的各个结点,克隆后,返回新的根结点。
关键代码:
class Solution {public: /** * @param root: The root of binary tree * @return root of new tree */ TreeNode* cloneTree(TreeNode *root) { // Write your code here if(root==NULL) return NULL; TreeNode *newroot=new TreeNode (root->val); newroot->left=cloneTree(root->left); newroot->right=cloneTree(root->right); return newroot; }};
做题感想:在创建新的根结点时,直接把旧的根结点赋给新的根节点,发生编译错误,又想起链表给创建的新结点时的方法,修改了if语句后的那句赋值代码,就对了。
0 0
- LintCode:克隆二叉树
- lintcode,克隆二叉树
- lintcode | 克隆二叉树
- LintCode-克隆二叉树
- LintCode 克隆二叉树
- 克隆二叉树-LintCode
- Lintcode 克隆二叉树
- LintCode 克隆二叉树
- lintcode -- 克隆二叉树
- lintcode:克隆二叉树
- 克隆二叉树-LintCode
- lintcode 375 克隆二叉树
- [LintCode]375.克隆二叉树
- lintcode——克隆二叉树
- LintCode算法题解——判断数独是否合法、平面列表、克隆二叉树、序列排号
- 二叉树的克隆
- 克隆二叉树
- 克隆二叉树
- java 异常处理
- Sizeof与Strlen的区别与联系
- BFC的形成条件和特性分析
- 安装nginx
- URL的组成格式
- LintCode-克隆二叉树
- 《机器学习实战》学习笔记---开发机器学习应用程序的基本步骤
- nginx 命令
- hdoj-2043-密码(解题报告)
- js修改不了input的值
- SDUT 2074 区间覆盖问题
- tip5——样式和主题
- java 常用类之Calendar
- 如何理解和应用闭包