![](https://img-blog.csdnimg.cn/20190918135101160.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
常考算法题
总结常考的笔试或面试题,主要是为了自己复习,故只做简单思路介绍,给出力扣同类型题题号。未在力扣出现的写出题解或好的博文链接
sunximei1
这个作者很懒,什么都没留下…
展开
-
位运算相关问题
题型多为,对整个数组进行异或、与运算;在数组中找到特定几个数使得运算结果最大或最小或等于目标值#异或#与1.数字范围按位于(力扣201)给你两个整数 left 和 right ,表示区间 [left, right] ,返回此区间内所有数字 按位与 的结果(包含 left 、right 端点)。...原创 2021-09-15 10:54:13 · 56 阅读 · 0 评论 -
LRU缓存机制(c++实现)
力扣146;核心结构是双向链表+哈希表实现(插入和查找复杂度均为O(1))思路是:维护一个双向链表(使得插入和删除节点时间为常数),每次插入或者查询的节点放在链表头部;最长时间未使用的放在尾部;链表长度不得超过限制;链表中所有节点存放在unordered_map中(使得查询时间为常数);(1)插入节点时,先看节点是否在链表(哈希表)中, 若在,直接更新值。先检查链表是否达到限制长度:若达到,则删除尾节点,并从哈希表中移除,再插入新建节点;若未达到,则直接插入;(2)查询节点时,则哈希表直接查询原创 2021-09-08 14:58:01 · 101 阅读 · 0 评论 -
背包相关问题
1.力扣377以下题解提供了不同背包问题的代码区别:https://leetcode-cn.com/problems/combination-sum-iv/solution/xi-wang-yong-yi-chong-gui-lu-gao-ding-bei-bao-wen-/原创 2021-09-07 12:19:01 · 40 阅读 · 0 评论 -
图相关算法总结
1.Dijkstra算法力扣743求最短路径,这个题解写的很好,可以参考https://leetcode-cn.com/problems/network-delay-time/solution/gtalgorithm-dan-yuan-zui-duan-lu-chi-tou-w3zc/原创 2021-09-06 08:50:54 · 52 阅读 · 0 评论 -
序列和串(数组)相关
子序列和子串的区别:子串要求连续,子序列则不要求连续,只要求相对顺序与原序列相同单个字符串/序列问题#最长递增子序列问题(力扣300)(1)动态规划(O(N^2))用一个额外数组存储,以 当前索引对应的值 作为结尾 的 子序列中,长度最大的值例:对于序列 10,9,2,5,3,7,101,18len数组 1,1,1,2,2,3, 4, 4遍历至len数组i位置时,将nums[i]的值与nums的0到i - 1的值比较,若大于其值,则可作为候选序列与当前最大序列长度比较,最终得到最大值原创 2021-08-17 16:58:55 · 281 阅读 · 0 评论 -
链表相关题目
链表题多为双指针,递归1.反转链表2.回文链表3.链表判环4.求环起点原创 2021-08-17 12:36:36 · 42 阅读 · 0 评论 -
动态规划+贪心算法
1.最长递增子序列问题(力扣300)(1)动态规划(2)贪心+二分搜索原创 2021-08-15 20:38:48 · 64 阅读 · 0 评论