树的拷贝
来源:互联网 发布:武神赵子龙网络点击率 编辑:程序博客网 时间:2024/06/04 17:52
1.合法性检测,同时也是递归拷贝结束的条件
2.递归拷贝左子树,返回新的左子树的指针
3.递归拷贝右子树,返回新的右子树的指针
4.给新的根节点分配内存
5.将上述得到的新左右子树指针初始化新的根节点
6.将形参根节点的数据复制到新根节点的数据域;
BiTNode * CopyTree(BiTNode * T){ BiTNode * newRoot = NULL; BiTNode * newLeft = NULL; BiTNode * newRight = NULL; if (T == NULL) { return NULL; } if (T->lchild) { newLeft = CopyTree(T->lchild); } else { newLeft = NULL; } if (T->rchild) { newRight = CopyTree(T->rchild); } else { newRight = NULL; } newRoot = (BiTNode*)malloc(sizeof(BiTNode)); if (newRoot == NULL) return NULL; newRoot->lchild = newLeft; newRoot->rchild = newRight; newRoot->data = T->data; return newRoot;}
0 0
- 二叉树的拷贝
- 树的拷贝
- 树的拷贝
- c++中 拷贝构造函数的深拷贝和浅拷贝--“浅拷贝”与“深拷贝”
- C++的拷贝构造函数(深拷贝、浅拷贝)
- Map拷贝 关于对象深拷贝 浅拷贝的问题
- 浅拷贝与深拷贝、以及深拷贝的实现
- Python对象的拷贝,浅拷贝和深拷贝。
- Map拷贝 关于对象深拷贝 浅拷贝的问题
- Map拷贝 关于对象深拷贝 浅拷贝的问题
- string类的浅拷贝,深拷贝,写实拷贝
- 深度拷贝、浅度拷贝、数组的拷贝
- Map拷贝 关于对象深拷贝 浅拷贝的问题
- 深拷贝与浅拷贝的实现
- 深拷贝与浅拷贝的区别
- Java的深拷贝和浅拷贝
- Java的深拷贝和浅拷贝
- C++的浅拷贝和深拷贝
- ionic实现轮播图效果
- mysql根据身份证查询年龄,地址,性别
- emgucv for untiy 的操作(一)
- Dragonboard 410c Python 交互设计——PyQt环境搭建
- java设置一段代码执行的超时时间的简单方法 间接实现获取Connection超时问题
- 树的拷贝
- Linux关于bashrc与profile的区别(转)
- python安装和matplotlib库导入全过程
- thinkphp中Auth权限类的使用
- Spark on YARN cluster作业运行全过程分析
- 苹果手机如何制作铃声
- (三)Spring详解——创建bean实例
- 一个4tab选项卡页面(一个json)
- 动态规划:最少硬币找零问题、01背包问题、完全背包问题