博客
关于我
RMQ&线段树复习
阅读量:583 次
发布时间:2019-03-11

本文共 500 字,大约阅读时间需要 1 分钟。

今天主要复习了RMQ和线段树,整理了一下模版。内容如下:

RMQ (范围最大值查询)

RMQ的核心思想是利用凑平方的方法离线处理查询。首先,我整理了与RMQ相关的预处理代码模版。

预处理部分:

  • 需要包含必要的头文件,包括标准输入、字符串操作和算法库。
  • 定义数据结构dmax和dmin分别用于存储区间内最大值和最小值。
  • 实现了一个用于初始化最大值的预处理函数initmax。该函数采用动态规划的方式,计算不同区间的最大值。
  • 实现了一个查询最大值的函数getmax,根据查询区间长度k快速定位预处理表中存储的最大值。
  • 线段树

    在学习过程中,我也进一步复习了线段树的相关知识。以下是线段树单点更新和区间查询的模版:

    线段树的关键点:

  • 线段树需要维护数据的信息,常用于支持多个操作,如单点更新和区间查询。
  • 线段树的节点包含左孩子和右孩子,用于划分查询区间。
  • 建立线段树时,通过递归的方式将原始区间分解为叶子节点,再逐步合并节点值。
  • 在查询操作中,根据查询范围,递归访问相关节点,累加结果。
  • 未来计划:

    • 继续深入学习这两种数据结构,熟练掌握它们的解题思路和实现技巧。
    • 应用到实际问题中,锻炼解题能力和创新思维。

    转载地址:http://xaytz.baihongyu.com/

    你可能感兴趣的文章
    mysqlreport分析工具详解
    查看>>
    MySQLSyntaxErrorException: Unknown error 1146和SQLSyntaxErrorException: Unknown error 1146
    查看>>
    Mysql_Postgresql中_geometry数据操作_st_astext_GeomFromEWKT函数_在java中转换geometry的16进制数据---PostgreSQL工作笔记007
    查看>>
    mysql_real_connect 参数注意
    查看>>
    mysql_secure_installation初始化数据库报Access denied
    查看>>
    MySQL_西安11月销售昨日未上架的产品_20161212
    查看>>
    Mysql——深入浅出InnoDB底层原理
    查看>>
    MySQL“被动”性能优化汇总
    查看>>
    MySQL、HBase 和 Elasticsearch:特点与区别详解
    查看>>
    MySQL、Redis高频面试题汇总
    查看>>
    MYSQL、SQL Server、Oracle数据库排序空值null问题及其解决办法
    查看>>
    mysql一个字段为空时使用另一个字段排序
    查看>>
    MySQL一个表A中多个字段关联了表B的ID,如何关联查询?
    查看>>
    MYSQL一直显示正在启动
    查看>>
    MySQL一站到底!华为首发MySQL进阶宝典,基础+优化+源码+架构+实战五飞
    查看>>
    MySQL万字总结!超详细!
    查看>>
    Mysql下载以及安装(新手入门,超详细)
    查看>>
    MySQL不会性能调优?看看这份清华架构师编写的MySQL性能优化手册吧
    查看>>
    MySQL不同字符集及排序规则详解:业务场景下的最佳选
    查看>>
    Mysql不同官方版本对比
    查看>>