![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
LeetCode算法
FreshHyq
这个作者很懒,什么都没留下…
展开
-
LeetCode-208.实现Trie(前缀树)
LeetCode-208.实现Trie(前缀树) 初识前缀树,以前也想过编译器补全与拼写检查是如何实现,今天每日一题碰到了前缀树,终于初步了解机制了,所以分享下 前缀树是一颗多叉树,如果多个字符串有相同的前缀的话,就共用一条前缀,每个字符串也可以看做一条链表,所以前缀树可以看成多个链表共用前缀的多叉链表。 前缀树的数据结构: struct Trie{ bool isEend;//字符串链表结束标志 //最主要的是理解下面的字母映射机制 struct Trie *next[26];//字母映射表,如果这个字母原创 2021-04-14 11:12:21 · 284 阅读 · 0 评论 -
LeetCode-415.字符串相加
LeetCode-415.字符串相加 给定两个字符串形式的非负整数 num1 和num2 ,计算它们的和。 主要思路就是计算每一位相加和,将进位记录下来,加到下一位计算中. 这里提供一个代码更简单的思路 class Solution { public: string addStrings(string num1, string num2) { int n1 = num1.size() - 1,n2 = num2.size() - 1; string ans;原创 2021-04-13 11:03:14 · 80 阅读 · 0 评论 -
LeetCOde-236.二叉树的最近公共祖先
LeetCOde-236.二叉树的最近公共祖先 给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为:“对于有根树 T 的两个节点 p、q,最近公共祖先表示为一个节点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。” 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/lowest-common-ancestor-of-a-binary-tree 著作权归领扣网络所有。商业转载请原创 2021-04-12 14:11:32 · 61 阅读 · 0 评论 -
2021-04-11
LeetCode-15.三数之和 给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?请你找出所有和为 0 且不重复的三元组。 注意:答案中不可以包含重复的三元组。 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/3sum 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。 解法一(暴力解-超时): class Solution { public: i原创 2021-04-11 12:01:25 · 68 阅读 · 0 评论 -
LeetCode-146.LRU缓存机制
LeetCode-146.LRU缓存机制 实现 LRUCache 类: LRUCache(int capacity) 以正整数作为容量 capacity 初始化 LRU 缓存 int get(int key) 如果关键字 key 存在于缓存中,则返回关键字的值,否则返回 -1 。 void put(int key, int value) 如果关键字已经存在,则变更其数据值;如果关键字不存在,则插入该组「关键字-值」。当缓存容量达到上限时,它应该在写入新数据之前删除最久未使用的数据值,从而为新的数据值留出空间原创 2021-04-10 11:09:16 · 103 阅读 · 0 评论