数据结构
文章平均质量分 57
沉默终止
life is a movie
展开
-
二叉树题目归纳:首个共同祖先与后继者
二叉树题目归纳 后继者 思路: 思路比较简单,二叉树中序遍历的一道题 首先知道二叉树左子树值小于根结点值,右子树值大于根结点值。如果后继结点值大于根结点值,那么在右子树中递归查找。否则在左子树中,那么此时后继结点即为根结点。如果在右子树中,那么后继结点则为递归查找到的结点。注意第一个if包含了等于的情况,即找到了改结点后继续在右子树中查找。 代码 class Solution { public TreeNode inorderSuccessor(TreeNode root, TreeNode p)原创 2021-07-19 00:25:00 · 86 阅读 · 0 评论 -
leetcode——212. 单词搜索 II
参考资料: leetcode 程序中用了递归所以导致内存消耗比较大,以后应该尽量使用非递归程序。 思路: 过段时间在写,程序还可以再优化利用剪枝 public List<String> findWords(char[][] board, String[] words) { if(words.length==0){ return new ArrayList<>(); } TrieNode root原创 2020-09-01 16:41:42 · 97 阅读 · 0 评论 -
数据结构——Trie
单词查找树、后缀树Trie 参考资料: leetcode之实现Trie 北大数据结构与算法课程:Trie 具体的数据结构代码java实现 算法第四版 基本定义 (trie发音为try),这个数据结构作用是取出数据,基本性质包括查找和插入算法,主要应用于数据检索以及大规模的英文数据字典(中文需要使用双数组Trie) 每个节点只能有一个指向它的节点,称为父结点 每个键所关联的值保存在该键最后一个字母所在结点中 leetcode下具体的实现代码,实现实现一个 Trie (前缀树),包含 insert, se原创 2020-08-31 18:50:53 · 325 阅读 · 0 评论