学习笔记(acwing)
紫薯C菌
recording...
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
2021-02-24
数据结构(二) Tire树 高效地存储和查找字符串的集合的数据结构。 1.存储 在根节点之后像一棵树一样依次延伸,没有就创建,有就沿着走下去; 例如我们存储abcdef,abdef,aced,bcdf,bcff,abc这些字符串,我们还需要在一个字符串结尾处标记来确认查找。 如下图所示: 2.查找 例如查找aced,依次从根节点往下找都是存在的,而且结尾处有标记则查找到了;再例如查找abcf,我们从c找f这部是不存在的所以查找不了;例如查找abcd,虽然都能找到但结尾处没有标记所以查找不了。 代码实现存储和原创 2021-02-24 18:31:01 · 182 阅读 · 0 评论 -
2021-02-20
数据结构 单链表:邻接表 作用是存储图和树 我们用数组模拟链表即静态链表,因为速度快;而C++中的动态链表慢。 双链表 优化某些问题原创 2021-02-22 11:22:40 · 155 阅读 · 0 评论 -
2021-02-17
lowbit用法 离散化 一组数据范围很大但是个数却不是很多的时候,我们总不能暴力开一个包括所有范围的数组,这时我们需要用到映射,映射的过程即为离散化。 做法:先去重 vector<int> alls; sort(alls.begin(),alls.end()); //排序 alls.erase(unique(alls.begin(),alls.end()),alls.end()); //去重 ...原创 2021-02-18 17:24:12 · 139 阅读 · 0 评论 -
2021-02-10
快速排序-分治 1.确定分界点:q[l] q[r] q[(l+r)/2] q[random] 2.*调整范围,使得左边一部分的数都<=分界点,右边部分的数都>=分界点 3.递归处理左右两段使得两段排好序,也就排好了整体 #include <iostream> #include <cstdio> using namespace std; const int N = 100010; int q[N]; void quick_sort(int q[],int l,i原创 2021-02-13 20:54:53 · 120 阅读 · 0 评论
分享