AcWing 每日一题 - Summer】的更多相关文章

本系列所有题目均为Acwing课的内容,发表博客既是为了学习总结,加深自己的印象,同时也是为了以后回过头来看时,不会感叹虚度光阴罢了,因此如果出现错误,欢迎大家能够指出错误,我会认真改正的.同时也希望文章能够让你有所收获,与君共勉! 今天来看看并查集,顾名思义,并查集的本质就是一个集合,支持快速合并集合,时间复杂度为\(\,O(1)\),以及查找某一元素属于某个集合,时间复杂度近乎为\(\,!O(1)\)(路径压缩后的时间复杂度),除此之外,并查集还有一大优势就是支持定义额外数组来存储额外的信息…
本系列所有题目均为Acwing课的内容,发表博客既是为了学习总结,加深自己的印象,同时也是为了以后回过头来看时,不会感叹虚度光阴罢了,因此如果出现错误,欢迎大家能够指出错误,我会认真改正的.同时也希望文章能够让你有所收获,与君共勉! 字典树 今天来学习字典树Trie,Trie树主要支持两个操作,一个是构建Trie时需要的插入操作Insert,另一个是查询操作query. 首先来看看什么是字典树Trie,标准的Trie树是字符串组成的,结点是每个字符.图片来自这里. 如果是数组来模拟Trie树,就…
本系列所有题目均为Acwing课的内容,发表博客既是为了学习总结,加深自己的印象,同时也是为了以后回过头来看时,不会感叹虚度光阴罢了,因此如果出现错误,欢迎大家能够指出错误,我会认真改正的.同时也希望文章能够让你有所收获,与君共勉! 今天主要学习二分法查找,二分主要分为两种类型,一种是整数二分查找,一种是浮点数二分查找.先看看整数二分,其模板如下: 整数二分 //查找左边界 SearchLeft 简写SL int SL(int l, int r) { while (l < r) { int mi…
本系列所有题目均为Acwing课的内容,发表博客既是为了学习总结,加深自己的印象,同时也是为了以后回过头来看时,不会感叹虚度光阴罢了,因此如果出现错误,欢迎大家能够指出错误,我会认真改正的.同时也希望文章能够让你有所收获,与君共勉! 昨天被并查集折磨了一天,今天终于可以放松点了.那么今天就主要来学习堆的操作. 这里的堆主要为大顶堆和小顶堆,他们都是以完全二叉树作为数据结构的(完全二叉树不清楚的可以自己去百度下),而完全二叉树一般用数组模拟.接下来谈谈堆能干什么,我们知道每个父节点比子节点的值要大…
本系列所有题目均为Acwing课的内容,发表博客既是为了学习总结,加深自己的印象,同时也是为了以后回过头来看时,不会感叹虚度光阴罢了,因此如果出现错误,欢迎大家能够指出错误,我会认真改正的.同时也希望文章能够让你有所收获,与君共勉! KMP字符串 给定一个字符串 S,以及一个模式串 P,所有字符串中只包含大小写英文字母以及阿拉伯数字. 模式串 P 在字符串 S 中多次作为子串出现. 求出模式串 P 在字符串 S 中所有出现的位置的起始下标. 输入格式 第一行输入整数 N,表示字符串 P 的长度.…
本系列所有题目均为Acwing课的内容,发表博客既是为了学习总结,加深自己的印象,同时也是为了以后回过头来看时,不会感叹虚度光阴罢了,因此如果出现错误,欢迎大家能够指出错误,我会认真改正的.同时也希望文章能够让你有所收获,与君共勉! 昨天写了一道表达式求值就已经快寄了,今天要写的队列,单调栈,单调队列就比较好写了,还好都是模板. 模拟队列 实现一个队列,队列初始为空,支持四种操作: push x – 向队尾插入一个数 x: pop – 从队头弹出一个数: empty – 判断队列是否为空: qu…
本系列所有题目均为Acwing课的内容,发表博客既是为了学习总结,加深自己的印象,同时也是为了以后回过头来看时,不会感叹虚度光阴罢了,因此如果出现错误,欢迎大家能够指出错误,我会认真改正的.同时也希望文章能够让你有所收获,与君共勉! 表达式求值 给定一个表达式,其中运算符仅包含+,-,*,/(加 减 乘 整除),可能包含括号,请你求出表达式的最终值. 注意: 数据保证给定的表达式合法. 题目保证符号 - 只作为减号出现,不会作为负号出现,例如,-1+2,(2+2)*(-(1+1)+2) 之类表达…
本系列所有题目均为Acwing课的内容,发表博客既是为了学习总结,加深自己的印象,同时也是为了以后回过头来看时,不会感叹虚度光阴罢了,因此如果出现错误,欢迎大家能够指出错误,我会认真改正的.同时也希望文章能够让你有所收获,与君共勉! 今天来学习一下用数组模拟链表,又称链式前向星,这里主要介绍单链表与双向链表. 单链表 实现一个单链表,链表初始为空,支持三种操作: 向链表头插入一个数: 删除第 k 个插入的数后面的数: 在第 k 个插入的数后插入一个数. 现在要对该链表进行 M 次操作,进行完所有…
本系列所有题目均为Acwing课的内容,发表博客既是为了学习总结,加深自己的印象,同时也是为了以后回过头来看时,不会感叹虚度光阴罢了,因此如果出现错误,欢迎大家能够指出错误,我会认真改正的.同时也希望文章能够让你有所收获,与君共勉! 昨天学习了离散化,而今天来学习一下区间和并. 区间和并 给定 n 个区间 [li,ri],要求合并所有有交集的区间. 注意如果在端点处相交,也算有交集. 输出合并完成后的区间个数. 例如:[1,3] 和 [2,6] 可以合并为一个区间 [1,6]. 输入格式 第一行…
本系列所有题目均为Acwing课的内容,发表博客既是为了学习总结,加深自己的印象,同时也是为了以后回过头来看时,不会感叹虚度光阴罢了,因此如果出现错误,欢迎大家能够指出错误,我会认真改正的.同时也希望文章能够让你有所收获,与君共勉! 今天来复习离散化的操作. 区间和 假定有一个无限长的数轴,数轴上每个坐标上的数都是 0. 现在,我们首先进行 n 次操作,每次操作将某一位置 x 上的数加 c. 接下来,进行 m 次询问,每个询问包含两个整数 l 和 r,你需要求出在区间 [l,r] 之间的所有数的…