区间和 | 区间最值-区间k大

区间和

1.递推-维护动态规划表 | 一维复杂度O(n) , 二维O(mn)
     一维区间连续和:d[i]含义-区间[1,i]前缀和,递推公式 d[i] = d[i-1] + A[i] , 递推条件d[0] = 0 
     二维矩形区域和:d[i][j]含义-矩形( [1,i] , [1,j] ) 前缀矩形区域和
递推公式d[i][j] = d[i][j-1] + d[i-1][j] + A[i][j] - d[i-1]  [j-1] ,递推条件memset(d,0,sizeof(0) )

2.线段树-维护一个二叉检索树 | 建树O(n),更新节点和查询区间和O(logn)

3.树状数组-维护一个树状数组 | 建结构O(n) , 更新节点和查询区间和(logn)
      树状数组类似于线段树,但是编码更简洁,速度更快;能够用树状数组解决的都能用线段树解决,反之不行


区间最值 | 区间 k大

1.快排 | nlogn复杂度求区间第k大,不适合多次查询问题

2.线段树-二叉检索树 | logn

3.划分树-基于线段树的区间k大 | logn
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值