2022年1月2日
摘要: 1. 双指针法(定长,变长); 滑动窗口:3. 无重复字符的最长子串 1 //滑动窗口 + 二分 2 3 class Solution { 4 public: 5 bool check(int len, string s) { 6 vector<int> cnt(256, 0); 7 int k = 阅读全文
posted @ 2022-01-02 21:35 学海一扁舟 阅读(59) 评论(0) 推荐(0) 编辑
  2021年12月26日
摘要: **基础知识** 1. 树形结构: 从代码结构来看,Tree 与 链表类似,主要在指针域的区别; 链表可以看成一叉树; 树形结构中: 节点代表集合,边代表关系 (RB tree/ trie...), 比如说 左边是小于关系,所以左边拎出来都是小于根节点的集合; 右边是大于关系,右边拎出来都是大于根节 阅读全文
posted @ 2021-12-26 23:11 学海一扁舟 阅读(281) 评论(0) 推荐(0) 编辑
摘要: 这些基础知识都是数论中基本,而在密码学中数论又是基础; 数论基础(质数筛法、同余、快速幂、gcd、裴蜀定理) **基础知识** 欧几里得算法: gcd(a, b) : 求a, b 最大公约数: 辗转相除法: 通过讲一个较大规模问题换换成为一个较小问题;(leetcode 1071 很有意思的题目,看 阅读全文
posted @ 2021-12-26 23:08 学海一扁舟 阅读(2265) 评论(0) 推荐(0) 编辑
摘要: **基础知识** 1. FILO(先入后出) : 出栈 更多意义上是指 指针移动(与队列出队类似,都是指针的移动); 2. 括号匹配问题引出 思路进阶过程:记录左右括号个数 -> 影响的其实左右括号差 -> 本质是 ( 等价 发生,) 等价 结束,()才是一件事情完整; ( ( ) ) 可以看作 是 阅读全文
posted @ 2021-12-26 23:06 学海一扁舟 阅读(173) 评论(0) 推荐(0) 编辑
  2021年12月2日
摘要: 基础知识 一段连续存储区存储任意数据,包含head,tail(最后一个元素的下一位:因为一般都是采用前开后闭区间,这样 cnt = tail - head); 支持操作有push(队尾入队),pop(队首出队); 先入先出(FIFO); 队列出队,入队多次操作以后,如果没有重复利用先前出队的空间,而 阅读全文
posted @ 2021-12-02 22:48 学海一扁舟 阅读(80) 评论(0) 推荐(0) 编辑
  2021年11月23日
摘要: 基础知识 包含数据域(内置类型,任意定义的结构), 指针域(绝对地址:pointer, 相对地址:下标...),通过指针域的值指向下一个位置,形成一个线性结构; 复杂度:插入O(1), 查找O(n), 更新O(1), 删除O(1); 特点:不适合快速定位查找数据,适合动态的插入和删除数据场景 扩展: 阅读全文
posted @ 2021-11-23 23:29 学海一扁舟 阅读(72) 评论(0) 推荐(0) 编辑