您好,欢迎光临本网站![请登录][注册会员]  

搜索资源列表

  1. 线段树学习资料——清华大学讲义

  2. 学习线段树很好的资料 希望能够对你有一定的帮助
  3. 所属分类:其它

    • 发布日期:2009-06-06
    • 文件大小:224256
    • 提供者:baobaoyeye
  1. 线段树的课件 今天刚刚学了这个

  2. 只要1分,自己今天刚刚学了这个,感觉挻好的就上传了
  3. 所属分类:其它

    • 发布日期:2010-07-31
    • 文件大小:477184
    • 提供者:zldry
  1. 线段树题目

  2. 大量线段树题目 zoj 1610 线段覆盖 poj 2777 线段覆盖 poj 2528 需要离散化,建树不同,需要处理不同->注意这组数据 3 1 10 1 3 6 10 the ans is 3. hdu 1754 求区间最大值 hdu 1166 求区间和 hdu 1698 成段更新 poj 3468 成段更新 ural 1019 覆盖加统计最长同一个颜色 zoj 2301 和上一题差不多,但是这个染色染的是点,注意染色为空的状况
  3. 所属分类:C/C++

    • 发布日期:2012-07-16
    • 文件大小:16384
    • 提供者:buctears
  1. 线段树入门

  2. 对算法有兴趣的可以来看看 在自然数,且所有的数不大于30000的范围内讨论一个问题:现在已知n条线段,把端点依次输入告诉你,然后有m个询问,每个询问输入一个点,要求这个点在多少条线段上出现过; 最基本的解法当然就是读一个点,就把所有线段比一下,看看在不在线段中; 每次询问都要把n条线段查一次,那么m次询问,就要运算m*n次,复杂度就是O(m*n) 这道题m和n都是30000,那么计算量达到了10^9;而计算机1秒的计算量大约是10^8的数量级,所以这种方法无论怎么优化都是超时 因为n条线段是固
  3. 所属分类:C++

    • 发布日期:2013-01-14
    • 文件大小:544768
    • 提供者:redcp
  1. 线段树专辑

  2. 在自然数,且所有的数不大于30000的范围内讨论一个问题:现在已知n条线段,把端点依次输入告诉你,然后有m个询问,每个询问输入一个点,要求这个点在多少条线段上出现过; 最基本的解法当然就是读一个点,就把所有线段比一下,看看在不在线段中; 每次询问都要把n条线段查一次,那么m次询问,就要运算m*n次,复杂度就是O(m*n) 这道题m和n都是30000,那么计算量达到了10^9;而计算机1秒的计算量大约是10^8的数量级,所以这种方法无论怎么优化都是超时 因为n条线段是固定的,所以某种程度上说每次
  3. 所属分类:C++

    • 发布日期:2013-01-14
    • 文件大小:114688
    • 提供者:redcp
  1. 运用伸展树解决数列维护问题 by Crash

  2. 对于数列维护问题,我们常用的一种手段是线段树。但使用线段树有一定的局限性,本文介绍运用伸展树解决这类问题,并且可以实现更多的功能。 (1 )伸展树的伸展操作 (2 )在伸展树中对区间进行操作 (3 )实例分析——NOI 2005 维护数列(Sequence ) (4 )和线段树的比较 by Crash
  3. 所属分类:专业指导

    • 发布日期:2013-06-14
    • 文件大小:286720
    • 提供者:gddswlz
  1. ACM大牛总结的线段树专辑,超经典的-1

  2. ACM大牛总结的线段树专辑,超经典的-1,ACM竞赛必备数据结构。
  3. 所属分类:C/C++

    • 发布日期:2017-09-29
    • 文件大小:261120
    • 提供者:weixin_40327022
  1. 一文详解:什么是B树?.pdf

  2. 详细了解B树的实现机制,深入理解大规模数据存储、索引查询的问题2.1磁盘的构造 磁盘是一个扁平的圆盘(与电唱机的唱片类似)。盘面上有许多称为磁道的圆圈, 数据就记录在这些磁道上。磁盘可以是单片的,也可以是由若干盘片组成的盘组, 每一盘片上有两个面。如下图11.3中所示的6片盘组为例,除去最顶端和最底 端的外侧面不存储数据之外,一共有10个面可以用来保存信息。 存取装置 主轴 动臂 盘片 柱面 千专 道 读写美 图11.3活动头盘示意图 当磁盘驱动器执行读/写功能时。盘片装在一个主轴上,并绕主轴高
  3. 所属分类:互联网

    • 发布日期:2019-10-08
    • 文件大小:560128
    • 提供者:feige74110
  1. C语言算法题-线段树

  2. Alice和Bob又在挑战智力,这次的模式是这样的,Alice写下若干个数给Bob,之后会发出若干指令,让Bob给某数加上一个数(A),或者给某数减去一个数(S),或者查询某两个数之间所有数字之和(Q),有时他们也身份互换,反应速度最快的人将得到“速算小能手“奖章。你有好办法么? 输入:第一行为数的个数N,第二行是这N个数,从第三行开始表示每个操作,第一个字母代表操作的种类,A和S后面的两个数i,j分别表示给第i个数加上或减去j,Q i,j表示查询i和j之间数字之和。 输出:若干行,每行为一次查
  3. 所属分类:C/C++

    • 发布日期:2020-08-09
    • 文件大小:2048
    • 提供者:qq_43899078
  1. 线段树(1)

  2. 线段树(1)
  3. 所属分类:C++

    • 发布日期:2016-03-29
    • 文件大小:288768
    • 提供者:qq_33583069
  1. 线段树建树

  2. 概念引入 线段树是一种二叉树,也就是说,每个线段都可以用一二叉树表示 比如一个长度为4的线段可以如此表示: ——————————————-4 1————-2————-3————4 1 2 3 4 如果你要表示线段上的和,最上面的根表示线段1~4的和 下面两个子节点表示1 ~ 2,3 ~ 4的和,以此类推…… ☽:sun:☽:sun:卐 然后我们还可以得到一个性质:节点i的权值=她的左儿子权值+她的右儿子权值。
  3. 所属分类:其它

    • 发布日期:2020-12-14
    • 文件大小:38912
    • 提供者:weixin_38744270
  1. Java实现 LeetCode 699 掉落的方块(线段树?)

  2. 699. 掉落的方块 在无限长的数轴(即 x 轴)上,我们根据给定的顺序放置对应的正方形方块。 第 i 个掉落的方块(positions[i] = (left, side_length))是正方形,其中 left 表示该方块最左边的点位置(positions[i][0]),side_length 表示该方块的边长(positions[i][1])。 每个方块的底部边缘平行于数轴(即 x 轴),并且从一个比目前所有的落地方块更高的高度掉落而下。在上一个方块结束掉落,并保持静止后,才开始掉落新方块。
  3. 所属分类:其它

    • 发布日期:2020-12-21
    • 文件大小:44032
    • 提供者:weixin_38743084
  1. 线段树(Segment Tree)

  2. 版权声明:本文为CSDN博主「Alex_McAvoy」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/u011815404/article/details/87277945 目录【概述】【基础操作实现】1.建树1)思路2)实现2.单点查询1)思路2)实现3.单点修改1)思路2)实现4.区间查询1)思路2)实现5.区间修改1)思路2)实现【模版】1.单点更新+区间查询2.区间更新+区间查询 【概述】 线段
  3. 所属分类:其它

    • 发布日期:2021-01-08
    • 文件大小:602112
    • 提供者:weixin_38628647
  1. Leetcode 683. K 个空花盆 (滑动窗口 或者 线段树)

  2. Leetcode 683. K 个空花盆 花园里有 N 个花盆,每个花盆里都有一朵花。这 N 朵花会在 N 天内依次开放,每天有且仅有一朵花会开放并且会一直盛开下去。 给定一个数组 flowers 包含从 1 到 N 的数字,每个数字表示在那一天开放的花所在的花盆编号。 例如, flowers[i] = x 表示在第 i 天盛开的花在第 x 个花盆中,i 和 x 都在 1 到 N 的范围内。 给你一个整数 k,请你输出在哪一天恰好有两朵盛开的花,他们中间间隔了 k 朵花并且都没有开放。 如果不存
  3. 所属分类:其它

    • 发布日期:2021-01-07
    • 文件大小:51200
    • 提供者:weixin_38641764
  1. LDUOJ 时间锁链 (状压+线段树 )

  2. 时间锁链 时间限制: 1 Sec 内存限制: 128 MB [命题人:admin] [ Edit] [ TestData] 题目描述 当墨老师找到封闭时间环中最小的逆序对数后,他就可以将时间环展开成一个长L的时间锁链(我们可以将之看成是一根很长的管子),其中L是整数,所以我们可以将该管子分为L段,并从左到右标记为1,2,…,L。 现在对管子有两种操作: “C A B C” 将A到B的数都标记为C(我们可形象的看成是染成C这种颜色)。 “P A B” 输出A和B之间不同颜色的数目。 颜色有T种,
  3. 所属分类:其它

    • 发布日期:2021-01-06
    • 文件大小:45056
    • 提供者:weixin_38663151
  1. 2020NYIST个人积分赛第四场(线段树+前缀 后缀乘积和)

  2. 题意: 给n个位置,q次操作,每次对操作可以改变i位置的数,定义f(i,j)=ai∗a(i+1)∗…∗aj.f(i,j) = ai * a(i+1) * … * aj.f(i,j)=ai∗a(i+1)∗…∗aj. 求整个区间中所有子区间乘积的和对10007取模 题解: 主要难点是找到求所有子区间乘积和的规律,然后用线段树维护。通过找规律,可以发现,所求所有子区间的和为该节点左儿子的和+该节点右儿子的和+左儿子的后缀乘积和*右儿子的前缀乘积和。 开一个结构体,每个节点带四个信息: struct n
  3. 所属分类:其它

    • 发布日期:2021-01-03
    • 文件大小:29696
    • 提供者:weixin_38594687
  1. LibreOJ-dfs序2 (dfs序,线段树)

  2. LibreOJ-dfs序2 (dfs序,线段树) 题目描述 给一棵有根树,这棵树由编号为1~N 的 N个结点组成。根结点的编号为R。每个结点都有一个权值,结点 的权值为 。 接下来有 M组操作,操作分为两类: 1 a x,表示将结点 的子树上所有结点的权值增加 ; 2 a,表示求结点 的子树上所有结点的权值之和。 输入格式 第一行有三个整数 N,M和R。 第二行有 N个整数,第 i个整数表示 vi。 在接下来的 N-1行中,每行两个整数,表示一条边。 在接下来的 M行中,每行一组操作。
  3. 所属分类:其它

    • 发布日期:2021-01-03
    • 文件大小:47104
    • 提供者:weixin_38736011
  1. 线段树例题之——sort.cpp

  2. T1 本题极其无聊,3T强行捏成1T,差最大 显然是 前一半后一半,差最小显然是间隔着放,方案数显然是卡特兰数列 关于卡特兰数列,直接放公式了h(n)=C(2n,n)/(n+1) (n=0,1,2,...) or h(n)=c(2n,n)-c(2n,n-1)(n=0,1,2,...) 也就是2n 个数0 1,保证在任何位置都有:之前的1的个数<= 0的个数 之类的问题 维护: 1.求和数组,每次右半边的和 - 左半边的和 2.
  3. 所属分类:C++

    • 发布日期:2021-03-18
    • 文件大小:4096
    • 提供者:qq_44842825
  1. 【题解】「HDU1166」敌兵布阵(线段树)

  2. 题面 【题目描述】 有nnn个营地,已知每个营地的人数,有四条命令: (1)Add(1) Add(1)Add iii jjj,iii和jjj为正整数,表示第iii个营地增加jjj个人(jjj不超过303030) (2)Sub(2)Sub(2)Sub iii jjj ,iii和jjj为正整数,表示第iii个营地减少jjj个人(jjj不超过303030); (3)Query(3)Query(3)Query iii jjj ,iii和jjj为正整数,i≤ji\leq ji≤j,表示询问第iii到第jj
  3. 所属分类:其它

    • 发布日期:2021-01-20
    • 文件大小:44032
    • 提供者:weixin_38621870
  1. 线段树(单点查询+区间求和)无lazy标记

  2. 模板题出处 原理就大概如图所示,线段树的每个节点都是原数组的一段区间和,而叶子节点就是原数组对应 的值 建树代码: void build(int p,int lf,int rt){//建树 ans[p]=0; if(lf==rt) { ans[p]=A[lf]; return ; } int mid=(lf+rt)>>1; build(lson); build(rson); push_up(p); } 单点修改
  3. 所属分类:其它

    • 发布日期:2021-01-20
    • 文件大小:102400
    • 提供者:weixin_38690522
« 12 3 4 5 6 7 8 »