Leetcode Hot 100

不知不觉到了要面试的年纪了,已经完全成为老登了(悲

记录一下面试复习帖吧(虽然感觉csdn已经完全凉掉了= =)

  1. 160. 相交链表 - 力扣(LeetCode)
    • 直接遍历,没啥好说的
  2. 236. 二叉树的最近公共祖先 - 力扣(LeetCode)
    • 每步 在左右子树去找p或q。如果左右子树各找到一个,则当前节点为lca(p,q);否则继续往左儿子/右儿子遍历。
    • 扩:倍增/树剖求LCA
  3. 234. 回文链表 - 力扣(LeetCode)
    • #快慢指针
    • 快慢指针找中点(其实就是快指针到末尾时慢指针自然就到一半了),O(n/2)
    • 反转前半条链表
    • 比较
  4. 739. 每日温度 - 力扣(LeetCode)
    • #单调栈/单调队列
  5. 226. 翻转二叉树 - 力扣(LeetCode)
    • 递归解法显然
    • 扩:二叉树的非递归式遍历
  6. 221. 最大正方形 - 力扣(LeetCode)
    • #前缀和
      • 求二维前缀和,只要正方格内总和=格子数,则是全1正方形
      • 1*1+2*2+3*3+...+n*n=O(n^3)
    • #动态规划
      • dp[i,j]表示以(i,j)为右下角,只包含1的正方形的边长
      • 若(i,j)格为1:dp(i,j)=min{dp(i-1,j),dp(i-1,j-1),dp(i,j-1)}+1
      • 否则:dp(i,j)=0
  7. 215. 数组中的第K个最大元素 - 力扣(LeetCode)
    • #排序 #二分
    • 扩:排序算法
  8. 208. 实现 Trie (前缀树) - 力扣(LeetCode)
    • #Trie
    • Trie实现
  9. 207. 课程表 - 力扣(LeetCode)
    • #拓扑
    • 拓扑排序实现
  10. 206. 反转链表 - 力扣(LeetCode)
  11. 200. 岛屿数量 - 力扣(LeetCode)
    • #深搜 #广搜
  12. 198. 打家劫舍 - 力扣(LeetCode)
    • #动态规划
    • 易错点:当成贪心
  13. 169. 多数元素 - 力扣(LeetCode)
    • #STL #排序 #分治
    • 法一:用map记录i出现次数,同时维护maxcnt,maxcnt_i
    • 法二:排序+取中点
    • 法三:分治
  14. 238. 除了自身以外数组的乘积 - 力扣(LeetCode)
    • #前缀和
    • 前缀和的变种,维护前缀积、后缀积
  15. 155. 最小栈 - 力扣(LeetCode)
    • #单调栈/单调队列
    • 最小栈的实现
  16. 152. 乘积最大子数组 - 力扣(LeetCode)
    • #双指针 #前缀和 #动态规划
    • 法一:前缀和变种,维护前缀积,和min_pos、max_pos、max_neg、min_neg的位置
    • 法二:动态规划,注意分max,min
  17. 148. 排序链表 - 力扣(LeetCode)
    • 归并排序的链表实现?
    • 实现
  18. 146. LRU 缓存 - 力扣(LeetCode)
    • map + 双向链表
  19. 142. 环形链表 II - 力扣(LeetCode)
    • #快慢指针
    • 判断链表是否有环:快慢指针相遇
    • 如何找到这个环的入口:从头节点和相遇节点同时查找,相遇处即为环的入口
      • 推导:
        • 设头节点到环入口x步,环入口到相遇节点y步,相遇节点到环入口z步
        • 则快慢节点相遇时
          • 慢指针走了x+y步
          • 快指针走了x+n(y+z)步
          • 有(x+y)*2=x+n(y+z)
          • 解得x=(n-1)(y+z)+z
  20. 141. 环形链表 - 力扣(LeetCode)
相关推荐
mokongJ15 分钟前
17 份异构销售数据的合并清洗方案:30 万行处理耗时 9.64 秒
数据结构
夏幻灵22 分钟前
每日一题:LeetCode 3:无重复字符的最长子串——滑动窗口思路详解
算法·leetcode·职场和发展
CarIise40 分钟前
Java实训阶段查漏补缺复习笔记2
java·linux·算法
无忧.芙桃1 小时前
C++ 并查集详解:原理、实现与应用
c语言·c++·算法·leetcode
蛋蛋的就会顺顺的1 小时前
hot100——二叉树
java·数据结构·算法·leetcode·力扣
Code_Solitude2 小时前
c语言:二分法的完整补充
c语言·开发语言·算法
一切皆是因缘际会2 小时前
掌控信息论:同源星际通信基础理论
人工智能·算法·ai
List<String> error_P3 小时前
freertos数据结构--链表
数据结构·链表
动词ing4 小时前
【C语言题目练习】算法 整数反转
c语言·开发语言·算法
Nil2084 小时前
leetcode 55跳跃游戏
算法·leetcode·游戏