BinaryTree
perlphp
代码是程序员的朋友,虽然没有热情,但是非常忠实。
展开
-
二叉树的一些基本操作
二叉树的一些基本操作,包括创建以及采用递归进行二叉树的先序、中序、后序及层次遍历 //BinaryTree.h #ifndef _BINARY_TREE_H #define _BINARY_TREE_H typedef struct TreeNode { int val; struct TreeNode *left; struct TreeNode *right; }TreeNode;原创 2017-06-06 18:33:36 · 256 阅读 · 0 评论 -
重建二叉树
输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。 /** * Definition for binary tree * struct TreeNode { * int val; *原创 2017-07-11 09:28:13 · 151 阅读 · 0 评论 -
二叉搜索树的后序遍历序列
输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。 后序遍历,则可与确定序列的最后一个树即为根节点的值,对于二叉搜索树,左子树上的值都小于根结点的值,右子树上的值都大于根节点的值,所以可以判定序列是否可以分为前后两段(左子树和右子树),并且这两段序列也是合法的后序序列,采用递归,代码如下: clas原创 2017-06-22 10:26:57 · 228 阅读 · 0 评论 -
二叉树最小公共父节点
/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */ clas原创 2017-08-31 10:35:01 · 551 阅读 · 0 评论