二叉树反转
2016-03-06 15:27
246 查看
二叉树反转,递归实现比较简单,只需要交换父母节点的左右子节点就行,递归反转左右子节点。
homebrew作者面试google时解不出这道题而被拒,本文给出c实现的二叉树反转,包括前中后遍历,二叉树的创建等。
反转代码如下:
示例输入输出如下:
树的结构如下:
代码链接:https://github.com/lilingyu/btreeInversion
homebrew作者面试google时解不出这道题而被拒,本文给出c实现的二叉树反转,包括前中后遍历,二叉树的创建等。
反转代码如下:
void inverseBtree(tnode* root) { if (NULL==root) { return; } tnode* tmp=root->left; root->left=root->right; root->right = tmp; inverseBtree(root->left); inverseBtree(root->right); }
示例输入输出如下:
1 2 3 -1 4 -1 5 -1 6 7 -1 -1 8 -1 -1 -1 -1
12345678 34576821 78654321 ****** 12345687 12867543 87654321
树的结构如下:
代码链接:https://github.com/lilingyu/btreeInversion
相关文章推荐
- 如何组织构建多文件 C 语言程序(二)
- AVL树-自平衡二叉查找树(Java实现)
- 如何写好 C main 函数
- 只有程序员看的懂的面试圣经|如何拿下编程面试
- 下一次技术面试时要问的 3 个重要问题
- Lua和C语言的交互详解
- PHP程序员面试 切忌急功近利(更需要注重以后的发展)
- 关于C语言中参数的传值问题
- 简要对比C语言中三个用于退出进程的函数
- 深入C++中API的问题详解
- 基于C语言string函数的详解
- C语言中fchdir()函数和rewinddir()函数的使用详解
- C语言内存对齐实例详解
- C语言编程中统计输入的行数以及单词个数的方法
- C语言自动生成enum值和名字映射代码
- 使用C语言判断英文字符大小写的方法
- c语言实现的带通配符匹配算法
- C语言实现顺序表基本操作汇总
- C语言中计算正弦的相关函数总结
- 使用C语言详解霍夫曼树数据结构