树
syqhit
这个作者很懒,什么都没留下…
展开
-
重建二叉树
经典的题目,已知一颗树的前序遍历和中序遍历,求这个树的后序遍历。 #include #include #include using namespace std; struct TreeNode { int key; TreeNode* left; TreeNode* right; }; TreeNode* CreateTree(int *pre_order,int pr原创 2016-04-28 11:19:12 · 275 阅读 · 0 评论 -
建立一棵二叉树
采用递归的方法建立一棵二叉树,虽然很简单的算法,真正写起来确是漏洞百出,果然还是基础不够扎实。struct TreeNode { char key; TreeNode* left; TreeNode* right; }; TreeNode* CreatTree() { TreeNode *T = new TreeNode; char a; cout<原创 2016-04-29 09:35:55 · 4215 阅读 · 0 评论 -
层次遍历二叉树
采用指针的方式实现二叉树的层次遍历 #include #include #include #include using namespace std; struct TreeNode { int key; TreeNode* left; TreeNode* right; }; void PrintNodeByLevel(TreeNode* root) { if(root原创 2016-04-28 14:45:10 · 446 阅读 · 0 评论 -
重建二叉树
输入一棵二叉树的前序遍历序列和中序遍历序列,重建二叉树,返回二叉树的根结点。 采用递归的思想,前序遍历的第一个节点是二叉树的根节点,在中序遍历中找到根节点左边的是左子树,右边的是右子树。 struct TreeNode* reConstructBinaryTree(vector pre,vector in) { int len=pre.size(); if(len==0)原创 2016-07-06 10:19:09 · 204 阅读 · 0 评论