02 2025 档案
力扣146. LRU 缓存(STL实现)
摘要:核心思路是有两个数据结构,一个哈希表和一个双向链表。双向链表用来实现一个队列,队头元素最近被使用,队尾元素最久没被使用;哈希表用来记录key与key相应的节点在链表中的指针。 1.面试场景要的应该是自己写结构体来实现双向链表,写的时候注意位置交换时指针的操作顺序 2.注意每次操作要同时维护哈希表和链 阅读全文
posted @ 2025-02-28 12:24 Coder何 阅读(52) 评论(0) 推荐(0)
力扣162. 寻找峰值(二分查找变式)
摘要:1.峰值到来前一定呈增长的趋势,所以只要存在a[i+1]>a[i],说明i的正方向上一定有一个峰值;若存在a[i-1]>a[i],说明i的负方向上一定有一个峰值 2.题目给出左右的边界都是-∞,所以对于边界元素(a[0],a[nums.size()-1])只要比相邻元素大,那就是峰值。 3.使用二分 阅读全文
posted @ 2025-02-27 20:27 Coder何 阅读(31) 评论(0) 推荐(0)
力扣128. 最长连续序列
摘要:1.排序后运算(nlogn),不符合题意,但在力扣里超过100%,估计是数据量太小。 2.并查集,主要开销在查找时间上 1 class Solution { 2 public: 3 unordered_map<int, int> parent; //记录父节点 4 unordered_map<int 阅读全文
posted @ 2025-02-27 10:50 Coder何 阅读(18) 评论(0) 推荐(0)
力扣92. 反转链表 II
摘要:1.使用vector辅助反转 1 /** 2 * Definition for singly-linked list. 3 * struct ListNode { 4 * int val; 5 * ListNode *next; 6 * ListNode() : val(0), next(nullp 阅读全文
posted @ 2025-02-25 21:52 Coder何 阅读(11) 评论(0) 推荐(0)
力扣74. 搜索二维矩阵(二分查找)
摘要:需要两次二分查找,一次用于确定行,另一次用于确定列 1 class Solution { 2 public: 3 int m, n; 4 vector<vector<int>> matrix; 5 int binaryRowFind(int left, int right, int key) { 6 阅读全文
posted @ 2025-02-25 20:29 Coder何 阅读(41) 评论(0) 推荐(0)
力扣103. 二叉树的锯齿形层序遍历(BFS)
摘要:切记不能在层序遍历的过程中修改左右次序,不然会导致遍历的结构错误。 该题只需照常层序遍历,在最后输出的结果的时候改变方向即可 1 /** 2 * Definition for a binary tree node. 3 * struct TreeNode { 4 * int val; 5 * Tre 阅读全文
posted @ 2025-02-24 21:36 Coder何 阅读(18) 评论(0) 推荐(0)
力扣79. 单词搜索(网格DFS + 回溯)
摘要:比较常规的多起点搜索问题 1 class Solution { 2 public: 3 typedef pair<int, int> pii; 4 int m, n; 5 vector<pii> start; 6 vector<vector<char>> board; 7 vector<int> n 阅读全文
posted @ 2025-02-20 17:22 Coder何 阅读(21) 评论(0) 推荐(0)
力扣994 腐烂的橘子(BFS)
摘要:使用BFS(层序遍历)来解决该题。起点就是腐烂橘子的点位集合。 错误思路:一开始脑子没转过来,对起点集合里的每一个点进行了一次bfs,然后求最小值 1 class Solution { 2 public: 3 typedef pair<int, int> pii; 4 map<pii, int> d 阅读全文
posted @ 2025-02-20 14:21 Coder何 阅读(36) 评论(0) 推荐(0)
力扣300 最长递增子序列
摘要:1.动态规划,时间复杂度O(n^2) 1 class Solution { 2 public: 3 vector<int> dp; //表示以dp[i]表示以i结尾的最长子序列长度 4 int lengthOfLIS(vector<int>& nums) { 5 dp.resize(nums.siz 阅读全文
posted @ 2025-02-17 21:46 Coder何 阅读(12) 评论(0) 推荐(0)