博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
复制二叉树
阅读量:6860 次
发布时间:2019-06-26

本文共 1227 字,大约阅读时间需要 4 分钟。

hot3.png

#include 
#include
typedef struct _BT_NODE{ int data; struct _BT_NODE* left; struct _BT_NODE* right;}BT_NODE;BT_NODE* AppendNode(int data){ BT_NODE* node=(BT_NODE*)malloc(sizeof(BT_NODE)); node->left=NULL; node->right=NULL; node->data=data; return node;}void VisitNode(BT_NODE* node){ printf("%d ",node->data);}void DuplicateBinTree(BT_NODE* root,BT_NODE** root_dup_ptr){ if(root==NULL)return; (*root_dup_ptr)=(BT_NODE*)malloc(sizeof(BT_NODE)); (*root_dup_ptr)->data=root->data; (*root_dup_ptr)->left=NULL; (*root_dup_ptr)->right=NULL; DuplicateBinTree(root->left,&((*root_dup_ptr)->left)); DuplicateBinTree(root->right,&((*root_dup_ptr)->right));}void DFS(BT_NODE* root){ if(root==NULL)return; VisitNode(root); DFS(root->left); DFS(root->right);}int main() { BT_NODE* root; BT_NODE* root_dup; /* 10 /\ 20 3015 16 */ root=AppendNode(10); root->left=AppendNode(20); root->right=AppendNode(30); root->left->left=AppendNode(15); root->left->right=AppendNode(16); printf("Original tree traversal result:\n"); DFS(root); printf("\n"); DuplicateBinTree(root,&root_dup); printf("Duplicated tree traversal\n"); DFS(root_dup); printf("\n"); return 0;}

 

转载于:https://my.oschina.net/betayuan/blog/1549639

你可能感兴趣的文章
网页之间的参数传递
查看>>
初步学习Django-第四篇:views.PY文件详解
查看>>
OAuth2简易实战(四)-Github社交联合登录
查看>>
Netty学习大纲
查看>>
OC中的私有方法
查看>>
分享几段JavaScript
查看>>
C++中的多态和Objective-C中的“多态”
查看>>
js基础五
查看>>
构建执法阅读笔记01
查看>>
剑指offer:合并两个排序的链表
查看>>
1602液晶显示实验
查看>>
图片水印
查看>>
Quart2D的基本介绍
查看>>
Lua点号和冒号区别
查看>>
STL基础
查看>>
有没有人要贪吃蛇的代码,然而有....................
查看>>
linux的top命令参数详解
查看>>
spring常用注解
查看>>
Material Menu
查看>>
Win8 环境变量位置
查看>>