题目描述 请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推。 解题思路:通过分析,使用栈进行存储结点 打印1时,将结点2 3 放入栈中,打印3时,将3的左右孩子67分别放入栈中想放入7 再放6. 通过举例分 ...
分类:
其他好文 时间:
2017-07-04 11:19:57
阅读次数:
135
题目描述 从上到下按层打印二叉树,同一层结点从左至右输出。每一层输出一行。 解题思路:可以直到,每次打印一个结点,然后打印下一行时总是先打印其左子结点,然后打印其右子结点。先入先出,使用队列处理。使用toBeprint记录当前行打印的个数,每存入一个-1;nextlevel记录下一行打印结点个数;一 ...
分类:
其他好文 时间:
2017-07-04 11:13:46
阅读次数:
108
题目: 从上往下打印二叉树 链接: https://www.nowcoder.com/practice/7fe2212963db4790b57431d9ed259701?tpId=13&tqId=11175&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-i ...
分类:
其他好文 时间:
2017-06-03 12:49:01
阅读次数:
200
思路:用队列保存二叉树的层节点,不断地从中弹出节点。每一次都用新的temp变量保存当前层的第一个节点 ...
分类:
其他好文 时间:
2017-05-20 01:16:59
阅读次数:
265
目录 1 好好学习 2 埃及分数 3 金蝉素数 4 横向打印二叉树 5 危险系数 6 公式求值 1 好好学习 2 埃及分数 3 金蝉素数 4 横向打印二叉树 5 危险系数 6 公式求值 完整解答请参见: 公式求值 解题报告 下面是楼主自己使用蛮力法求解,只过蓝桥练习系统中3组数据>~<。 ...
分类:
编程语言 时间:
2017-05-13 22:08:39
阅读次数:
248
目录 1 问题描述 2 解决方案 1 问题描述 问题描述 二叉树可以用于排序。其原理很简单:对于一个排序二叉树添加新节点时,先与根节点比较,若小则交给左子树继续处理,否则交给右子树。 当遇到空子树时,则把该节点放入那个位置。 比如,10 8 5 7 12 4 的输入顺序,应该建成二叉树如下图所示,其 ...
分类:
编程语言 时间:
2017-05-08 23:09:22
阅读次数:
252
1、二叉树定义: typedef struct BTreeNodeElement_t_ { void *data; } BTreeNodeElement_t; typedef struct BTreeNode_t_ { BTreeNodeElement_t *m_pElemt; struct BTr ...
分类:
编程语言 时间:
2017-04-29 14:18:56
阅读次数:
224
题目:请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类 思路:leetcode上的最优解,思路就是dfs,而不是一层一层遍历,层数是偶数(0,2,4。。。)时,顺序添加相应的节点的数字,而奇数层时(1,3,5 ...
分类:
其他好文 时间:
2017-04-11 09:51:54
阅读次数:
158
题目:从上到下按层打印二叉树,同一层结点从左至右输出。每一层输出一行。 思路:设置两个指针,一个指向当前层最右,另一个指向现在遍历的节点,,基本就是bfs。。。加一个换行判断 ...
分类:
其他好文 时间:
2017-04-11 09:51:32
阅读次数:
118
题目描述 请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推。 /* struct TreeNode { int val; struct TreeNode *left; struct TreeNode *ri ...
分类:
其他好文 时间:
2017-04-09 09:38:46
阅读次数:
283