二叉树是一种非线性结构,遍历二叉树几乎都是通过递归或者用栈辅助实现非递归的遍历。用二叉树作为存储结构时,取到一个节点,只能获取节点的左孩子和右孩子,不能直接得到节点的任一遍历序列的前驱或者后继。而线索二叉树利用二叉树中指向左右子树的空指针来存放节点的前驱和..
分类:
其他好文 时间:
2016-05-05 17:49:46
阅读次数:
210
【题目】输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是,返回true,否则输出false。假设输入的数组的任意两个数字都互不相同。 【思路】首先我们得知道什么是二叉搜索树,二叉查找树(Binary Search Tree),(又:二叉搜索树,二叉排序树)它或者是一棵空树,或者... ...
分类:
其他好文 时间:
2016-05-05 17:13:57
阅读次数:
151
为什么会有线索化二叉树呢?二叉树是一种非线性结构,遍历二叉树几乎都是通过递归或者用栈辅助实现非递归的遍历。用二叉树作为存储结构时,取到一个节点,只能获取节点的左孩子和右孩子,不能直接得到节点的任一遍历序列的前驱或者后继。为了保存这种在遍历中需要的信息,我们..
分类:
其他好文 时间:
2016-05-05 07:16:07
阅读次数:
199
题目:输入一个整数数组,判断该数组是不是某二叉树的后序遍历的结果.如果是则返回true,否则返回false.假设输入的数组的任意两个数字互不相同. 例如输入数组{5,7,6,9,11,10,8},则返回true,因为这个整数序列是下图二叉树的后序遍历的结果.如果输入的数组是{7,4,6,5},由于没 ...
分类:
其他好文 时间:
2016-05-02 10:29:13
阅读次数:
209
输入某二叉树的前序遍历和中序遍历的结果,重建出这棵二叉树,假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如,输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建出这棵满足前序遍历和中序遍历的二叉树并输出它的头结点。对一棵二叉树..
分类:
其他好文 时间:
2016-04-29 02:05:22
阅读次数:
476
enumerate函数用于遍历序列中的元素以及它们的下标,可以非常方便的遍历元素。 比如我在往excel中写数据时就用到了这个函数: ...
分类:
编程语言 时间:
2016-04-28 00:14:51
阅读次数:
1680
二叉树的遍历运算是将二叉树中节点按一定规律线性化的过程,当二叉链表作为存储结构时,只能找到节点的左、右孩子信息,而不能直接得到节点在遍历序列中的前驱和后继信息。线索化二叉树能够解决这样的问题,将二叉链表中的空指针域填上相应节点的遍历前驱或后继节点的地址,而..
分类:
其他好文 时间:
2016-04-27 22:51:44
阅读次数:
353
二叉树是一种非线性结构,遍历二叉树几乎都是通过递归或者用栈辅助实现非递归的遍历。用二叉树作为存储结构时,取到一个节点,只能获取节点的左孩子和右孩子,不能直接得到节点的任一遍历序列的前驱或者后继。为了保存这种在遍历中需要的信息,我们利用二叉树中指向左右子树的..
分类:
其他好文 时间:
2016-04-23 07:52:08
阅读次数:
2235
输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。 解法是递归判断,先找根节点,划分左右子树递归求解。边界需要特殊考虑。 AC代码: ...
分类:
其他好文 时间:
2016-04-19 06:11:18
阅读次数:
133
问题 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树。 思路 首先找到先序遍历的第一个节点,就是根节点,然后在中序遍历 ...
分类:
其他好文 时间:
2016-04-17 11:43:12
阅读次数:
124