• 数据结构矩阵问题总结


    当我们把区间问题拓展到二维的方阵问题的时候,很多东西,其实就不会再去求那么难的东西了,二维问题主要考察的是从一维到二维的一个转化和拓展

    然后,我们还是以静态方阵->带修方阵的顺序来介绍,至于动态方阵,我们可以参考精准覆盖问题的DLX算法中使用的数据结构,那就是舞蹈链,除此以外,在NOIP2017的day2T3,队列一题我们也可以有着启发

    然而动态方阵与我们这些老套的数据结构还是脱轨的,此处就不介绍了(强行解释一波)

    先说静态方阵,我们针对静态方阵无非就是查询,查询子矩阵的最值或者求子矩阵的和,对于查询子矩阵的最值来说,我们有二维的ST算法撑腰:https://www.cnblogs.com/aininot260/p/9379833.html

    而对于子矩阵和的问题,二维的前缀和也是可以胜任的

    考虑带修方阵问题,我们如果是修改点查询矩阵,修改矩阵查询点,修改矩阵查询矩阵,可以直接扔给二维树状数组来做,基本秒杀:https://www.cnblogs.com/aininot260/p/9336527.html

    而对于修改区间查询区间最值的问题,我们交给功能强大的二维线段树来做(这里是树套树的形式,比四分树更加契合):https://www.cnblogs.com/aininot260/p/9375048.html

    我们在区间问题里面曾经引出了一个带lazy tag的,功能无比强大的线段树,但是功能如此强大的二维线段树的板子,至今还是无能为力

    对于三维区间问题,我们在二维树状数组里面给出了三维树状数组的模板,并给出了点修改区间查询和区间修改点查询的例子,将二维树状数组的区间修改区间查询拓展到三维形式

    。。就是传说中的三维区间的修改和查询了,是不是很帅。。

    总的来说,有了二维树状数组以及二维ST这两个东西,这些模板题都是没有问题的

  • 相关阅读:
    [问题2014A05] 复旦高等代数 I(14级)每周一题(第七教学周)
    oracle的相关信息
    进程和线程的区别
    阿里云人脸检测定位
    php与oracle11g经典分页
    Linux 远程复制
    redis的相关信息
    教你编译PHP7 (nginx+mysql+php7)
    nginx的相关信息
    php about session store db or cache
  • 原文地址:https://www.cnblogs.com/aininot260/p/9379916.html
Copyright © 2020-2023  润新知