【数据结构】 线段树
文章平均质量分 86
x314542916
不怕比我聪明的人,只怕比我聪明但比我还要努力的人
展开
-
【解题报告】 HDU 1754 I Hate It 线段树 单点更新
题目连接:HDU 1754这个是线段树的基本操作----更新和查询,属于基础水题,我就不说什么了。如果不知道线段树的基本操作,请移步线段树的基本操作// HDU 1754 I Hate It 线段树 -- 单点更新// 有效结点: 20w// 深度达到:(lg20w)/(lg2) +1 .= 18.61 .= 19// 其完全二叉树 总结点 个数为: (1<<19) - 1原创 2012-08-06 23:51:27 · 2195 阅读 · 3 评论 -
【解题报告】 NYOJ 116 士兵杀敌(二) 线段树 单点更新求区间和
题目连接:NYOJ 116这个是线段树的基本操作----更新和查询,和上一个题一样,只不过一个是求最大值一个是求区间和,看来线段树在更新和查询的时候对时间的消耗很小很小。这个属于基础水题,我就不说什么了。如果不知道线段树的基本操作,请移步线段树的基本操作// NYOJ 116 士兵杀敌(二) 线段树 --单点更新求区间和// #include #include #inclu原创 2012-08-07 00:07:29 · 2421 阅读 · 1 评论 -
【解题报告】 HDU 1698 Just a Hook 线段树 (线段替换) 插线问线 + 延时标记
// HDU 1698 Just a Hook 线段树(线段替换)插线插线+ 延时标记// 延时标记:起一个缓冲的作用,第一次遇到的更新先不更新到底,等下一次更新或者查询的时候再更新到位。// 因此线段树结构中的区间和 并不是实际值。// 此处的更新到位是指 本次更新或查询所需的最后一层(因为我查的不是点,而是区间),并非到最底层// 延时标记下沉的前提:线段树结构中遇到了一个区间完全的包原创 2012-08-10 12:12:54 · 1121 阅读 · 0 评论 -
【解题报告】 HDU 2795 Billboard -- 线段树的应用
题目大意:有一个广告板,告诉我们尺寸(即高度宽度),我们要贴广告,广告的尺寸规定为1*w,我们每次从最左上面开始贴,当给出的广告不够贴时,移到下一行贴。输出当前广告贴在第几行。题目连接:-> HDU 2795 思路大意:拿高度来当"线段"进行拆分,每次更新一下贴完之后所剩余的长度,并顺便输出所在行即可。接下来计算一下充当 线段树的数组 的宽度:这个题目中广告版的高度范围比较大,1原创 2012-10-01 20:32:57 · 1091 阅读 · 0 评论 -
【线段树】线段树入门之入门
线段树的入门级 总结 线段树是一种二叉搜索树,与区间树相似,它将一个区间划分成一些单元区间,每个单元区间对应线段树中的一个叶结点。 对于线段树中的每一个非叶子节点[a,b],它的左儿子表示的区间为[a,(a+b)/2],右儿子表示的区间为[(a+b)/2+1,b]。因此线段树是平衡二叉树,最后的子节点数目为N,即整个线段区间的长度。 使用线段树可以原创 2012-08-06 23:47:52 · 48018 阅读 · 36 评论