标签: C++

19 篇文章

力扣题记之hard
LCR 078. 合并 K 个升序链表 既然每个链表都是升序的,那么合并后的第一个节点一定是某个链表的头节点 合并后的第二个节点,可能是某个链表的头节点,也可能是第一个节点的下一个节点 所以我们需要把所有可能是下一个节点的节点放在一个集合中,并且最小的可以自动浮起来,即最小堆 /** * Definition for singly-linked l…
力扣题记之动态规划
More content:LeetCode hot100@动态规划&多维动态规划 DP是由前一个状态推导而出,而贪心是在局部直接选择最优 DP五部曲: 确定dp数组以及下标的含义 确定递推公式(状态转移公式) dp数组如何初始化 确定遍历顺序 举例推导dp数组 01背包模板: for(int i = 0; i < weight.siz…
卡码题记之图论
More content:LeetCode hot100@图论 大纲 深搜与广搜 并查集 最小生成树 Kruskal prim 拓扑排序 最短路算法 dijkstra(单源) Bellman_ford(单源&负权) Floyd(多源) 代码框架 dfs vector<vector<int>> result; // 保…
笔试题记:23年网易秋招
link:模拟笔试 - 卡码网周赛第三十六期 175. 阴阳师✅ 简单模拟 注意向上取整技巧 #include<bits/stdc++.h> using namespace std; int main() { int n; cin >> n; int a, b; while(n--) { cin >> a >…
LeetCode hot100@图论
More content:力扣题记之图论 200. 岛屿数量✅ 简单岛屿问题 注意本题的grid数组类型是char 因此grid[i][j] == '1'不能简写为grid[i][j] class Solution { private: int dir[4][2] = {0, 1, 0, -1, 1, 0, -1, 0}; int …
贼贼贼简单的多人聊天室
Linux Server epoll实现多路复用 Windows Client 初始化Windows下的socket环境 #pragma comment(lib, "Ws2_32.lib") int main() { WORD wVersionRequested; WSADATA wsaData; int err; wVersionRequeste…
Visual Studio调试
快捷键 F9:为当前行设置/取消断点 开始调试: F5:一段段执行,每到断点就停下 F10:一行行执行 F10:逐过程执行(逐行) F11:逐语句执行(可进入函数内部) shift + F5:放弃调试 局部变量窗口显示了变量的值,可以进行修改 ps:可以直接使用vs图形化界面代替快捷键进行调试
笔试题记:24年小米春招
190. 偏爱的字符✅ 模拟:用map存偏爱字符,遇到非偏爱字符时同时向两边搜即可 #include<bits/stdc++.h> using namespace std; void modify(int pos, string &res, const string &str, unordered_map<char…
笔试题记:24美团春招技术岗第一批笔试
1.小美的平衡矩阵 一开始暴力搜索,超时了 因此必须优化,时间主要浪费在了“计数一个范围内的0和1的个数” 所以用一个二维前缀和,psum[row][col] 表示 grid[row][0:col] 中1的个数,也就是预计算 这样在执行“计数一个范围内的0和1的个数”,只需要遍历每一行的前缀和,从二维降到了一维 #include <bits/…
LeetCode hot100@动态规划&多维动态规划
More content:力扣题记之动态规划 70. 爬楼梯✅ dp数组下标代表当前在第几阶,数组value表示到这一阶的方法数(即爬到第i层楼梯,有dp[i]种方法) 遍历顺序从前往后 但是一开始没想明白为什么状态转移公式是dp[i] = dp[i-1] + dp[i-2] 只是找规律推出来的 class Solution {public: in…