自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(36)
  • 收藏
  • 关注

原创 记念一下Nazo game的通关

2024-11-20 13:33:17 132

原创 深搜剪枝优化

!!!!!

2024-10-08 13:20:32 465

原创 树上的差分

【代码】树上的差分。

2024-09-30 12:58:28 259

原创 倍增求 LCA

LCA 指的是最近的公共祖先,倍增法求解 LCA 的步骤如下。 a. 求深度:对于每个节点 dfs 预处理处节点深度; b. 求倍增祖先:计算出每个节点向父元素跳 步所到达的节点(在这里 大于整棵树的最大深度) 备注: a. 设 f [ x , k ] 表示节点 x 向上跳 步能到达的祖先, f [ x , 0 ] 表示 x 的父元素,如对应节点不存在 f [ x , k ] = 0。 b. 将路径长度 分为两半,x 跳

2024-09-30 12:49:19 624

原创 倍增、RMQ

倍增法(英语:binary lifting ),顾名思义就是翻倍。他能够使线性的处理转化为对数级的处理,大大的优化时间复杂度。 这个方法在很多算法中均有应用,其中最常用的是:RMQ 问题和求 LAG(最近公共祖先)。 倍增思想是一种十分巧妙的思想。“倍增”二字体现在它每次将当前的已知结果或考察范围扩大一倍。正是由于这个原因,它的时间复杂度降低了很多,一般是将一个系数 N 变为 。 例子 1:如果要求比 n 小的最近的 2 的幂,,这个值,是从 1 开始跳跃 次得到的

2024-09-29 13:42:22 220

原创 线段树及应用

目录1. 线段树基础(1)什么是线段树(2)线段树的拆分原理(3)相关算法对比 (4)线段树的使用前提(5)线段树建树操作(6)线段树单点修改(7)线段树区间查询 2. 区间修改:延迟标记与标记永久化最后 a. 线段树是:利用分治思想处理对一段序列进行大量区间操作(区间修改、区间查询)的数据结构; b. 线段树可以在 O ( n log n ) 的时间复杂度内,完成区间修改 / 区间查询操作; c. 线段树的叶节点即为原序列,内部节点除了左右儿子之外,还保存着其分管

2024-09-29 13:00:47 386

原创 树状数组及应用

【代码】树状数组及应用。

2024-09-27 13:48:46 342

原创 Trie 字典树

Trie 字典树指的是:某个字符串集合构造的又有根树。由于 Trie 字典树,较好的利用了字符串的公共前缀,因此有效的节约存储空间。 Trie 树典型应用是:用于统计,排序和保存大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计。它的优点:利用字符串的公共前缀来减少查询时间,最大限度地减少无谓的字符串比较,查询比哈希树高。 它有 3 个基本性质: A、根结点不包含字符,除根结点外每一个结点都只包含一个字符; B、从根结点到某一结点

2024-09-26 13:39:38 426

原创 KMP算法

目录1. KMP 算法的概念2. KMP 的原理 3. next 数组的计算方法(1)加快匹配的原理(2)next 数组的含义(3)如何高效匹配(4)如何高效求 next 数组 如:有上图所示的父串 s 和子串 p,如果要匹配出子串 p 在父串 s 中是否出现过或者出现过多少次。 暴力的做法如图所示,第 1 次父串 s 从第 1 个字符开始和子串匹配,匹配到第 8 个字符发现不等,匹配失败。 第 2 次父串 s 从第 2 个字符开始尝试和子串匹配,由第 1 次匹配可

2024-09-25 13:26:52 793

原创 哈希表与离散化

【代码】哈希表与离散化。

2024-09-24 13:41:09 1036 1

原创 Trie字典树和AC自动机(题目)

题目描述:三年级二班已经完成了竞选班长的投票,已知一共有 n 张投票,每张投票上写了一位同学的名字。投票统计结束后,张老师随意问一个同学的名字,请编程快速检索出,该同学共有几票。输入:第一行读入一个整数 n ,代表产生了 n 张投票。( n≤10^5 )接下来 n 行,每行有一个字符串 s ,代表该张投票上写的同学的姓名(姓名由不含空格的小写英文字母组成,n 个姓名的总长度 ≤10^6。接下来一行读入一个整数 m( m≤10^5 ),代表王老师提问的同学的姓名数量。

2024-06-05 12:19:53 535

原创 KMP算法(题目)

题目描述:给定一个父字符串 s 和子字符串 p ,请按照从前向后的顺序,请求出 p 在 s 中所有出现的起始位置。例如:s=ABADABCEABABA,p=ABA,则求解的结果是:1 9 11。输入:第 1 行读入一个仅包含大写字母的字符串 s;第 2 行读入一个仅包含大写字母的字符串 p;s 和 p 均是长度不超过 106 的字符串。输出:输出 1 行,按题意输出 p 在 s 中出现的位置,数字之间用空格隔开。样例:输入:ABA输出:1 9 11。

2024-06-04 17:45:47 660

原创 哈希表与离散化(题目)

YesNo。

2024-06-04 17:31:30 1105

原创 2023csp-s(选择题)

A.4B.5C.6D.7【参考答案】C【解析】最长公共子序列为“ABCABA”。

2024-05-19 10:45:21 969

原创 2023csp-j(选择题)

【参考答案】A【知识点】链表的插入【解析】向链表头部中插入数据newNode的流程是:1. 初始化待插入数据newNode:Node* newNode = new Node;2. 将newNode的next指针指向:head:newNode -> next = head;3. 将head指针指向newNode:head = newNode;

2024-05-19 10:33:06 1397

转载 十大经典排序算法

选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理是:第一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,然后再从剩余的未排序元素中寻找到最小(大)元素,然后放到已排序的序列的末尾。以此类推,直到全部待排序的数据元素的个数为零。选择排序是不稳定的排序方法。选择排序的思想就是:从当前数中选出一个最大或者最小的值排在最前面,然后从剩下的数中选出剩下数的最值排在已经排序的数的后面,算法时间复杂度O (n²)。​​首先,我的这个十大经典排序算法是。

2024-05-17 17:19:30 1397 1

原创 csp备考------2023 大湾区信息学

2023大湾区

2024-05-16 16:56:31 537 1

原创 位运算概述

二进制补码符号位作不易点个赞吧!!!作不易点个赞吧!!!​​​​​​​作不易点个赞吧!!!

2024-05-16 07:40:57 1179 1

原创 阅读完善程序复习(四)2022csp-s

错题:25. 答案:D解析:模拟即可。27. 答案:C解析:代入一个特例即可(基础,可以分析一下排序)。32. 答案:B解析:模拟即可。33. 答案:B解析:模拟即可。34. 答案:C解析:记录合并数组的当前位置的下标。35. 答案:B解析:比较待归并的两个数组的当前元素的大小。36. 答案:C解析:根据程序明确left1和right1的含义。39. 答案:A解析:根据题意作答,容器2中的水倒入容器1。41. 答案:A解析:判断是否已有C升水。42. 答案:A解析:判断接下来是否将容器2中的水倒入容器1。

2024-05-10 17:57:20 449 1

原创 精选错题(对于我自己的)复习题(八)

2024-05-09 17:56:37 469 1

原创 PUBG下载

https://www.pubgmobile.com/HK/events.shtml?page=1(手机版)https://steam2.ssyxjs.cn/gameStore/detail12/2204?plan=%E7%BB%9D%E5%9C%B0%E6%B1%82%E7%94%9F-18&e_creative=88906878234&e_keywordid=784021409904&bd_vid=8434250545082323133(可能是电脑版)https://www.pubg.com/zh-

2024-05-01 19:48:52 135 2

原创 2022 csp-j 答案(精选题)

制作不易点个赞吧!!!制作不易点个赞吧!!!制作不易点个赞吧!!!

2024-04-30 17:02:23 479 1

原创 精选错题(对于我自己的)复习题(五)

2024-04-29 17:54:55 99

原创 精选错题(对于我自己的)复习题(四)

2024-04-29 17:32:02 87

原创 2023 csp-s 答案(精选题)

制作不易点个赞吧!!!制作不易点个赞吧!!!制作不易点个赞吧!!!

2024-04-29 13:12:32 1858

原创 阅读完善程序复习(一)2023csp-j(我自己的)

题目:

2024-04-25 13:19:42 307 1

原创 精选错题(对于我自己的)复习题(二)

2024-04-24 17:47:16 435

原创 精选错题(对于我自己的)复习题(一)

看的

2024-04-24 16:59:27 113

原创 图论的基础(水题)

有一个无向图,图中要么有两个奇点要么0奇点,如果是欧拉回路请从第一个点(1号点)为起点开始遍历,如果有两个奇点,则以字典序大的为起点开始遍历,在遍历的过程中,字典序小结点的先遍历。2 . 接下来由于 DFS 的递归回溯,会退回终点的上一个结点,继续往下搜索,直到寻找到第二个无边可走的结点,则这个接点必定是欧拉路中终点前最后访问的结点。由于是 DFS 递归结束的时候记录的,那么该边是走完欧拉道路的最后的那条边,层层返回后最开始的也是最开始的出发地。第一行为两整数,n 和 e ,表示 n 个顶点,e 条边。

2024-04-18 17:25:47 1026 1

原创 图论的基础

【代码】图论的基础。

2024-04-18 16:25:53 1006 1

原创 并查集(水题)

【代码】并查集(水题)

2024-04-08 12:37:56 1037

原创 并查集概述

并查集是一种树型的数据结构,由于处理一些不相交集合的合并及查询问题。并查集思想是用一个数组表示了整片森林,树的根节点唯一是一个集合的标识,我们只要找到了某个元素的树确定它在哪个集合里。最后,现在我们就学完了并查集,并查集其实并不难,难的是要写太多字了!!!以上是作者本人自己总结。我还要说的是:看官们在学习后要趁热打铁做一份笔记呦(有利于加深理解)。最后的最后:!!!!!!!!

2024-04-07 18:02:24 634

原创 STL标准模板库(水题)

目录A. 数组存数B. 排序C. 约瑟夫问题D. 坐标排序E. 小X算排名F. 10进制转D进制G. 括号匹配H. 叫号软件温馨提示:题目描述今有 N 个数组,初始时,N 个数组均为空。共有 M 次操作,每次在第 X 个数组中加入数字 Y。问最终各数组中有多少数,并将它们排序输出。比如,输入如下数据:表示有 3 个数组,共有 5 次操作,分别向第 1 个数组存入 33,第 1 个数组存入 2 ,第 1 个数组存入 1,第 2 个数组存入 1,第 3 个数组存入1。输出如下:第 1 行表示:第 1

2024-03-27 13:04:24 894 1

原创 STL标准模板库总结

STL标准模板库(一)STL标准模板库(二)

2024-03-26 17:00:58 460

原创 SLT标准模板库(二)

SLT标准模板库(二)

2024-03-22 13:39:53 2050 1

原创 STL标准模板库(一)

这下子我们一口气将STL中常用的一大部分讲完了,请先缓一缓,自己去写写代码,多多记忆,这样才能将收益最大化。等下一篇,我们将剩余的stack,queue,priority_queue也一次性讲完!最后,本篇文章是作者自己学习过后自行总结而成,可能会有些缺漏,我就在此,请看官们赐教!!!!!!!

2024-03-21 13:12:01 2349 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除