随笔分类 -  线段树和我

摘要:————————————————————————————等风来,不如追风去。 介绍 权值线段树是用来求第k大(或小的)。 权值线段树,顾名思义是一棵线段树。 但它和普通线段树不同: 线段树,每个节点用来维护一段区间的最大值或总和等。 权值线段树,相当于一个桶,每个节点用来表示一个区间的数***出现的 阅读全文
posted @ 2019-07-30 13:25 龙龙666666 阅读(328) 评论(0) 推荐(0)
摘要:————————————————————————相识,是在那么不经意的瞬间。我还远远不够,远远,远远,远远不够啊。加油呀! foundation : 1.异或,英文为exclusive OR,缩写成xor。 异或(xor)是一个数学运算符。它应用于逻辑运算。异或的数学符号为"⊕",计算机符号为"xo 阅读全文
posted @ 2019-07-29 13:37 龙龙666666 阅读(176) 评论(0) 推荐(0)
摘要:——————————————————————已识乾坤大,犹怜草木青。 先介绍一篇优秀的洛谷博文:https://www.luogu.org/problemnew/solution/P3372 lazy tag: 皎月半酒花说: 首先,懒标记(lazy tag)的作用是记录每次、每个节点要更新的值,也 阅读全文
posted @ 2019-07-28 13:28 龙龙666666 阅读(165) 评论(0) 推荐(0)
摘要:——————————————————————————浅喜如苍狗,深爱如长风。 以下以维护数列区间和的线段树为例,演示最基本的线段树代码。 1.定义: 2.建树: 3.点修改: 假设A[L]+=C: 4.区间修改: 5.区间查询: 阅读全文
posted @ 2019-07-27 12:52 龙龙666666 阅读(212) 评论(0) 推荐(0)
摘要:谢谢你们一直爱着我! 加油! 代码实现线段树:(0).定义: (1).建树: (2).点修改: 假设A[L]+=C: 点修改其实可以写的更简单,只需要把一路经过的Sum都+=C就行了,不过上面的代码更加规范,在题目更加复杂的时候,按照格式写更不容易错。 (3)区间查询: 讨论区间查询的一种求和的情况 阅读全文
posted @ 2019-07-25 09:51 龙龙666666 阅读(263) 评论(0) 推荐(0)
摘要:不是能不能办到的问题,既然我已经下定决心要成为海贼王了,如果因此而战死的话,也无所谓了。 承接上一章节,继续探索线段树丫! 如何利用线段树进行区间统计? 假设这13个数为1,2,3,4,1,2,3,4,1,2,3,4,1. (A[1]=1,A[2]=2,......A[13]=1)在区间之后标上该区 阅读全文
posted @ 2019-07-25 00:49 龙龙666666 阅读(176) 评论(0) 推荐(0)
摘要:走吧,目标伟大航路! 线段树的点点滴滴: 线段树之所以称为“树”,是因为其具有树的结构特性。线段树由于本身是专门用来处理区间问题的(包括RMQRMQ、RSQRSQ问题等。) 先从一些直观性的角度来看: 上图是用二分法丫!问题来喽, 对于给定区间[2,12]要如何分解成上述区间呢,何以分解之? 分解方 阅读全文
posted @ 2019-07-24 23:14 龙龙666666 阅读(231) 评论(0) 推荐(0)