Invert a binary tree
2015-12-31 10:45
316 查看
Invert a binary tree
Invert a binary tree.For example
4 / \ 2 7 / \ / \ 1 3 6 9
to
4 / \ 7 2 / \ / \ 9 6 3 1
思路
感觉自己一直把问题想复杂啊代码1
/** * Definition for a binary tree node. * struct TreeNode { * int val; * struct TreeNode *left; * struct TreeNode *right; * }; */ struct TreeNode* invertTree(struct TreeNode* root) { struct TreeNode *t,*t1,*t2; if(root == NULL) t = NULL; else { t = (struct TreeNode*)malloc(sizeof(struct TreeNode)); t->val = root->val; //复制根节点 t1 = invertTree(root->left); t2 = invertTree(root->right); t->left = t2; t->right = t1; return t; } }
代码2
/** * Definition for a binary tree node. * struct TreeNode { * int val; * struct TreeNode *left; * struct TreeNode *right; * }; */ struct TreeNode* invertTree(struct TreeNode* root) { if(root == NULL) return NULL; else{ struct TreeNode* tmp = root->left; root-> left = invertTree(root->right); root->right = invertTree(tmp); return root; } }
这个else也可以去掉,因为已经return了
相关文章推荐
- android中将一个项目作为library导入另一个项目中
- Android电话录音
- 用securecrt同时操作多台服务器
- 坐标系、变换及缓冲区及操作矩阵的通用变换函数(openGL)
- Java高级特性之枚举
- 聚类算法-DBSCAN-C++实现
- Sphinx按某个字段搜索过滤
- 17.1---编写一个函数交换两个变量的值(CC150)
- 搭建git服务器及利用git hook自动布署代码
- 从0开始在Android下开发生活方向盘应用(自绘雷达图)
- vi 整行 多行 复制与粘贴
- Git命令索引
- jdbc调用带select返回结果的DEMO
- PHP导入与导出Xml格式的Excel
- 在iOS中使用icon font
- iOS代码:手机号码和价格金额有效性判断及特殊字符的限制
- linux应用开发相关知识点
- SpringMVC验证框架Validation特殊用法
- Vs2012界面编程
- Struct和Class的区别