摘要: 区间问题 ST表(静态区间查找) ​ ST表是利用倍增思想来缩短时间的,数组 f[i][j] 的含义,从第 i 个元素开始,向后连续 2^j 个元素组成的区间内的最值(最大值或最小值,需提前确定)。 \[f[i][j] = \max\left(f[i][j-1],\ f\left[i + 2^{j- 阅读全文
posted @ 2025-09-19 20:33 catis 阅读(4) 评论(0) 推荐(0)
摘要: 图论 链式前向星 //邻接表,稀疏图 const int N = 100010, M = N * 2; int h[N], e[M], ne[M], idx; void add(int a, int b) { e[idx] = b, ne[idx] = h[a], h[a] = idx ++ ; } 阅读全文
posted @ 2025-08-14 15:48 catis 阅读(7) 评论(0) 推荐(0)
摘要: 数据结构 单链表 // head 表示头结点的下标 // e[i] 表示节点i的值 // ne[i] 表示节点i的next指针是多少 // idx 存储当前已经用到了哪个点 int head, e[N], ne[N], idx; // 初始化 void init() { head = -1; idx 阅读全文
posted @ 2025-08-12 10:13 catis 阅读(5) 评论(0) 推荐(0)
摘要: 快排 void qsort(std::vector<int> &arr, int l, int r){ if(l >= r) return; int i = l - 1, j = r + 1, mid = arr[l + r >> 1]; while(i < j){ do i ++; while(a 阅读全文
posted @ 2025-08-11 16:13 catis 阅读(5) 评论(0) 推荐(0)