[LeetCode]Construct Binary Tree from Preorder and Inorder Traversal
摘要:105. Construct Binary Tree from Preorder and Inorder Traversal Given preorder and inorder traversal of a tree, construct the binary tree. Note:You may
阅读全文
二叉树总结(一)概念和性质
摘要:一、树的概念 树是一些点的集合,这个集合可以为空,若不为空,则它是由一个根节点和0个或多个为空的子树组成,且每个子树都被一条来自根节点的有向边相连。 树叶:没有儿子的节点;兄弟:具有相同父亲的节点;类似还有祖父和孙子节点。 路径:节点n1,n2,n3,...,nk的一个序列,使得对于1 <= i <
阅读全文
[LeetCode]Implement Trie (Prefix Tree)
摘要:题目:Implement Trie (Prefix Tree) 实现字典树。 什么是字典树? Trie树,又叫字典树、前缀树(Prefix Tree)、单词查找树 或 键树,是一种多叉树结构。如下图: 上图是一棵Trie树,表示了关键字集合{“a”, “to”, “tea”, “ted”, “ten
阅读全文
[LeetCode]Unique Binary Search TreesII
摘要:题目:Unique Binary Search TreesII 如果要列出所有可能的二叉搜索树,可以在上面的思路上进一步。 f(n) = f(0)*f(n-1) + f(1)*f(n-2) + ... + f(n-1)*f(0); 只要求出不同变量下的子树的所有情况,在整合到一起就可以了。 具体思路
阅读全文
二叉树总结(二)树的遍历
摘要:该文我会用来总结二叉树相关的知识 二叉树如下图: 二叉树的结构 二叉树构造方法 为了测试二叉树的的各种算法,我不得不写一个二叉树的构造方法,我主要是用层次遍历的方式来构造二叉树的。层次遍历在后面会详细说到。 用字符串的方式来输入二叉树的序列,例如: 输入:1 2 3 4 5 6 7 null nul
阅读全文
[LeetCode]Unique Binary Search Trees
摘要:题目:Unique Binary Search Trees 找值为1->n的所有可能的二叉树。 如果是找可能的数量而不需要列出所有可能时,可以用动态规划。 思路如下: 动态规划法:f(n)表示该子树中有n个数字可用来组成树枝f(0) = 1;空树f(1) = 1;树根f(2) = f(0)*f(1)
阅读全文