摘要: 实现Trie树 class Trie { public: struct Node { Node * son[26]; bool is_end; Node() { for(int i = 0; i < 26; i ++ ) son[i] = nullptr; is_end = false; } }*r 阅读全文
posted @ 2021-04-15 23:47 呼_呼 阅读(34) 评论(0) 推荐(0) 编辑
摘要: 股票买卖Ⅱ 题目链接 //一个长线操作可以分解为该时间段内一系列连续一天的交易 //所以我们在考虑所有可能的收益时只需要考虑所有操作交易时间跨越的天数都为一的集合 //而所有操作时间跨越的天数都为一的交易两两之间是独立的 #include <iostream> using namespace std 阅读全文
posted @ 2021-04-15 21:14 呼_呼 阅读(37) 评论(0) 推荐(0) 编辑
摘要: KMP字符串 //时间复杂度O(n) #include <iostream> using namespace std; const int N = 100010, M = 1000010; int n, m; char p[N], s[M]; int ne[N]; int main() { cin 阅读全文
posted @ 2021-04-15 11:27 呼_呼 阅读(30) 评论(0) 推荐(0) 编辑
摘要: 滑动窗口方法 参考了一位大佬的公众号文章,公众号名为“labuladong”,参考文章为《我写了套框架,把滑动窗口算法变成了默写题》 一、LeetCode 76: 最小覆盖字串(hard) 1. c++实现 ps: 刚开始刷题,很菜,本题代码自己先尝试写了一下,写出来后细节上问题很多,最后看着文章的 阅读全文
posted @ 2021-04-15 00:35 呼_呼 阅读(165) 评论(0) 推荐(0) 编辑
摘要: 单调栈 最常用应用场景:找到每一个数左/右边离它最近的比它小/大的数 思考思路类似双指针,先考虑朴素暴力做法,再寻找特征,优化方案 单调栈 //ios比scanf和printf慢很多!!! #include <iostream> using namespace std; const int N = 阅读全文
posted @ 2021-04-14 11:48 呼_呼 阅读(70) 评论(0) 推荐(0) 编辑
摘要: 链表 面试题中的链表一般用结构体来构造表示 struct Node { int val; Node *next; }; new Node(); //非常慢 笔试题中一般用数组模拟链表 用数组模拟单链表 用邻接表来模拟 邻接表一般用来存储树和图 静态链表 单链表 //静态链表 //用数组模拟链表,速度 阅读全文
posted @ 2021-04-14 10:45 呼_呼 阅读(81) 评论(0) 推荐(0) 编辑
摘要: 离散化 将一个值域很大,但是分布很稀疏的数列压缩映射到一个更小的数组当中,后面处理时可以大大减小复杂度 保序的离散化 需要考虑两个问题: 原数组中可能有重复元素 如何快速算出x离散化后的值,二分 区间和 //将一个值域很大,但是分布很稀疏的数列压缩映射到一个更小的数组当中,后面处理时可以大大减小复杂 阅读全文
posted @ 2021-04-13 12:22 呼_呼 阅读(60) 评论(0) 推荐(0) 编辑
摘要: 双指针的核心思想是优化时间,将朴素的两重循环O(n ^ 2)算法优化成O(n) O(n ^ 2) for(int i - 0; i < n; i ++ ) for(int j = 0; j < n; j ++ ) exec() 将上面的朴素算法优化成O(n) 双指针的通用框架 for(int i = 阅读全文
posted @ 2021-04-12 22:32 呼_呼 阅读(96) 评论(0) 推荐(0) 编辑
摘要: 前缀和 对输入数组做预处理,可以快速求出数组中某连续一段元素的和 前缀和 //前缀和一定要让下标从1开始,便于定义s[0]; //定义s[0]是为了方便处理边界情况,类似于“哨兵”技巧的作用,统一用一套代码覆盖所有情况,避免特判 #include <iostream> using namespace 阅读全文
posted @ 2021-04-12 21:53 呼_呼 阅读(48) 评论(0) 推荐(0) 编辑
摘要: 学习acwing《算法基础课》总结记录 大数超出了语言默认类型能表示的范围,需要特殊处理 将大数存到一个数组里面,先存低位,依次存储高位(四种运算用相同的思路) 高精度加法 A + B 人工模拟加法过程 #include <iostream> #include <vector> using name 阅读全文
posted @ 2021-04-12 19:48 呼_呼 阅读(70) 评论(0) 推荐(0) 编辑