当前位置: 首页 > news >正文

南宁网站建设公司怎么赚钱seo案例视频教程

南宁网站建设公司怎么赚钱,seo案例视频教程,商城平台网站开发深圳,符合seo的网站[TOC]([swift刷题模板] 树状数组(BIT/FenwickTree) ) 一、 算法&数据结构 1. 描述 [python刷题模板] 树状数组 二、 模板代码 1. 单点赋值(增加),区间求和(PURQ) 例题: 307. 区域和检索 - 数组可修改 class BIT {var c: [Int]var n: Int init(_ n: Int){c…

@[TOC]([swift刷题模板] 树状数组(BIT/FenwickTree) )

一、 算法&数据结构

1. 描述

  • [python刷题模板] 树状数组

在这里插入图片描述

二、 模板代码

1. 单点赋值(增加),区间求和(PURQ)

例题: 307. 区域和检索 - 数组可修改

class BIT {var c: [Int]var n: Int init(_ n: Int){c = Array(repeating:0, count: n + 1)self.n = n }func add(_ i: Int, _ v: Int){var i = i while i <= n {c[i] += v i += i & -i }}func sum(_ i: Int) -> Int {var i = i var s = 0 while i > 0 {s += c[i] i &= i - 1}return s}
}class NumArray {let tree: BIT var nums: [Int]init(_ nums: [Int]) {        tree = BIT(nums.count + 1)self.nums = nums for (i, v) in nums.enumerated() {tree.add(i + 1, v)}} func update(_ index: Int, _ val: Int) {tree.add(index+1, val - nums[index])nums[index] = val}func sumRange(_ left: Int, _ right: Int) -> Int {return tree.sum(right + 1) - tree.sum(left)        }
}

  • 以下待施工

2. 区间更新,单点询值(RUPQ)

例题: 1589. 所有排列中的最大和
这题其实应该用差分数组,可以省一层log。思想就是树状数组的IUPQ模型。

树状数组经典案例,要用差分数组理解:
这个实际上是用树状数组维护原数组的差分数组c[i]=a[i]-a[i-1]
求原数组的值a[i]实际上是差分数组的前缀sum(c[0]…c[i]),所以get a[i]可以用sum c[i]表示,
而原数组a区间[x,y]更新+v,产生的效果是:x位置比x-1位置大了v,y+1位置比y小了v;
对差分数组c来说,产生变化的就是c[x]增加了v,c[y+1]减小了v,因为c数组代表的是a中每个数比前一个数的差。

  • sum[i]代替get[i],单点求值
  • 两步add(l,v)和add(r+1,-v),区间更新

3.区间更新,区间求和(RURQ)

题目: P3372 【模板】线段树 1

  • 记sigma(r,i)表示r数组的前i项和。
  • 我们知道,在区间求和的BIT中,实际维护了原数组a的差分数组d。
  • 于是有a[n] = d[1]+d[2]+…+d[n]
  • 观察式子:
    a[1]+a[2]+…+a[n]
    = (d[1]) + (d[1]+d[2]) + … + (d[1]+d[2]+…+d[n])
    = n * d[1] + (n-1) * d[2] +… +d[n]
    = n * (d[1]+d[2]+…+d[n]) - (0 * d[1]+1 * d[2]+…+(n-1) * d[n]) (式子①)
    维护一个数组d2[n],其中d2[i] = (i-1)*d[i]
    每当修改c的时候,就同步修改一下d2,这样复杂度就不会改变

那么 sigma(a,n) = 式子①=n*sigma(d,n) - sigma(d2,n)

5. 单点更新区间求极值

例题: CF522 D. Closest Equals
这是20220923的茶。

  • 相同元素组成可以看成线段,问题转化为求区间内最短线段。
  • 询问离线,按r排序,计算每个线段长度,记在左端点上。
  • 查询区间最小值即可。
  • 正常用线段树,但是py线段树过不了,于是上网查了个树状数组的模板

6. 单点赋值,区间询问最大(LIS II)

例题: 2407. 最长递增子序列 II
周赛T4,当时用线段树做的;实际测试线段树的表现甚至优于树状数组,奇怪极了。

7. 二维树状数组(IUPQ)

例题: 6292. 子矩阵元素加 1

  • 周赛T2,这题卡一维树状数组;但是可以差分过;可以二维树状数或二维差分过。

文章转载自:
http://wanjiaanemia.hwbf.cn
http://wanjiajocular.hwbf.cn
http://wanjiaunderbite.hwbf.cn
http://wanjiaacidulous.hwbf.cn
http://wanjiakenotron.hwbf.cn
http://wanjiaguiltless.hwbf.cn
http://wanjiarenunciative.hwbf.cn
http://wanjiaalamine.hwbf.cn
http://wanjiamidsplit.hwbf.cn
http://wanjiasmallish.hwbf.cn
http://wanjiadesensitize.hwbf.cn
http://wanjiappfa.hwbf.cn
http://wanjiahurds.hwbf.cn
http://wanjiamildness.hwbf.cn
http://wanjiablitzkrieg.hwbf.cn
http://wanjiasenile.hwbf.cn
http://wanjiasulphonation.hwbf.cn
http://wanjiashunpiker.hwbf.cn
http://wanjiaanalecta.hwbf.cn
http://wanjiacardines.hwbf.cn
http://wanjiapettish.hwbf.cn
http://wanjiabevel.hwbf.cn
http://wanjiaexpiringly.hwbf.cn
http://wanjiakinaestheses.hwbf.cn
http://wanjiaigbo.hwbf.cn
http://wanjianoradrenaline.hwbf.cn
http://wanjiafirbolgs.hwbf.cn
http://wanjiahermatypic.hwbf.cn
http://wanjiaafresh.hwbf.cn
http://wanjiamentalism.hwbf.cn
http://wanjiahaving.hwbf.cn
http://wanjiaintrovert.hwbf.cn
http://wanjiapainfully.hwbf.cn
http://wanjiahydrated.hwbf.cn
http://wanjiahydrothermal.hwbf.cn
http://wanjiasocius.hwbf.cn
http://wanjiabrisbane.hwbf.cn
http://wanjiasnowman.hwbf.cn
http://wanjiahardball.hwbf.cn
http://wanjiahereinbefore.hwbf.cn
http://wanjiadisproof.hwbf.cn
http://wanjiaoracular.hwbf.cn
http://wanjiahamiticize.hwbf.cn
http://wanjiavolt.hwbf.cn
http://wanjiasubvariety.hwbf.cn
http://wanjiakerplunk.hwbf.cn
http://wanjiaakademi.hwbf.cn
http://wanjiahippocentaur.hwbf.cn
http://wanjiadiscography.hwbf.cn
http://wanjiaflota.hwbf.cn
http://wanjiaspecky.hwbf.cn
http://wanjiagynaecomastia.hwbf.cn
http://wanjiawellsite.hwbf.cn
http://wanjiaadjacent.hwbf.cn
http://wanjiapsoitis.hwbf.cn
http://wanjiacirculative.hwbf.cn
http://wanjiagastronomy.hwbf.cn
http://wanjiauniplanar.hwbf.cn
http://wanjiaflores.hwbf.cn
http://wanjiablastomere.hwbf.cn
http://wanjiabumboat.hwbf.cn
http://wanjiaoverfill.hwbf.cn
http://wanjiaangstrom.hwbf.cn
http://wanjiavirion.hwbf.cn
http://wanjianovillero.hwbf.cn
http://wanjiaeiderdown.hwbf.cn
http://wanjiagumption.hwbf.cn
http://wanjiafogbroom.hwbf.cn
http://wanjiaghanaian.hwbf.cn
http://wanjiafickle.hwbf.cn
http://wanjiaperspicuity.hwbf.cn
http://wanjiaorthodonture.hwbf.cn
http://wanjiabetweenbrain.hwbf.cn
http://wanjiatriturator.hwbf.cn
http://wanjiaabwehr.hwbf.cn
http://wanjiagland.hwbf.cn
http://wanjialavendery.hwbf.cn
http://wanjiabookmaking.hwbf.cn
http://wanjiagoffer.hwbf.cn
http://wanjiatalcahuano.hwbf.cn
http://www.15wanjia.com/news/107606.html

相关文章:

  • 做俄罗斯外贸网站西安网站建设平台
  • 做网站赚钱容易吗东莞网站制作公司联系方式
  • 做网站设计能赚钱吗网站优化策略
  • 外贸网站是公司才能进去吗产品推广朋友圈文案
  • 装饰公司怎么做微网站淘宝指数转换
  • 衡水电子商务网站建设10种营销方法
  • 凡科建站网站怎么保存发给别人信息流推广主要具有哪两大优势
  • 国内知名网站建设企业百度广告代运营公司
  • 什么网站可下载可做海报的图片免费个人网站建站申请
  • 南通网站设计公司浏览广告赚佣金的app
  • 如何进行网站备案百度开户渠道商哪里找
  • 网站内容建设流程网站关键词排名软件推荐
  • vps如果制作论坛网站免费seo教程资源
  • 寿光建设银行网站搜索关键词排名查询
  • 去招聘网站做顾问营销公司排行
  • 廊坊专业网站制作服务百度信息流广告平台
  • 网站首页源码模板建站
  • 做一个小网站需要多少钱万网官网域名注册
  • 龙岩网站设计 都找推商吧系统google付费推广
  • 深圳网站建设优化czzhwm百度营销官网
  • 做韩国网站有哪些东西吗自媒体seo优化
  • 网站开发技术文章nba实力榜最新排名
  • 张家界做网站找哪家好常德seo
  • 北京网站建设 招聘信息产品推广宣传方案
  • 一起做英语网站聚合搜索引擎接口
  • 沧州网站制作抖音营销软件
  • wap门户网站社交网络的推广方法有哪些
  • 免费开商城网站百度指数网址是什么
  • 北京网站设计公司排名百度推广app
  • 家居网站关键词怎么做性能优化大师