树状数组复习

基本原理

树状数组的原理简单来说就是利用二进制拆分区间
我们可以对一个数进行二进制分解,最多分解成log(x)个数,同样我们可以对[1,n]这个区间进行分解。也是最多log段,每次修改时我们维护受到影响的区间,然后查询时用这log个区间拼凑出一个前缀。这就是树状数组的大概思想。
最基本的作用是动态维护前缀和
在定义树状数组时,我们定义 c [ i ] 数组 c[i]数组 c[i]数组
c [ x ] = ∑ i = x − l o w b i t ( x ) + 1 x a [ i ] 即 c [ i ] 保存的时 [ x − l o w b i t ( x ) + 1 , x ] 中所有数的和 c[x]=\sum_{i=x-lowbit(x)+1}^xa[i] \quad 即c[i]保存的时[x-lowbit(x)+1,x]中所有数的和 c[x]=i=xlowbit(x)+1xa[i]c[i]保存的时[xlowbit(x)+1,x]中所有数的和
image
image

重点:
c [ x ] 管辖区间的长度是多少? c[x]管辖区间的长度是多少? c[x]管辖区间的长度是多少?
image

操作

1.查询

x-=lowbit(x)就是下次个要跳到的地方

int ask(int x)
{int sum=0;auto lowbit=[](x){return x&-x;};for(;x;x-=lowbit(x))	sum+=c[x];return sum;	
}

2.修改
树状数组修改时要将,从当前点到根节点这以路径上的所有点都进行修改

void add(int x,int y)
{for(x;x<=n;x+=lowbit(x)) c[x]+=y;
}

建树过程就看成n次修改过程时间复杂度为 O ( n l o g n ) O(nlogn) O(nlogn)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/665671.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[晓理紫]每日论文分享(有中文摘要,源码或项目地址)--大模型、扩散模型、视觉

专属领域论文订阅 关注{晓理紫|小李子}&#xff0c;每日更新论文&#xff0c;如感兴趣&#xff0c;请转发给有需要的同学&#xff0c;谢谢支持 如果你感觉对你有所帮助&#xff0c;请关注我&#xff0c;每日准时为你推送最新论文。 为了答谢各位网友的支持&#xff0c;从今日起…

论文阅读:Learning Lens Blur Fields

这篇文章是对镜头模糊场进行表征学习的研究&#xff0c;镜头的模糊场也就是镜头的 PSF 分布&#xff0c;镜头的 PSF 与物距&#xff0c;焦距&#xff0c;光学系统本身的像差都有关系&#xff0c;实际的 PSF 分布是非常复杂而且数量也很多&#xff0c;这篇文章提出用一个神经网络…

数仓建模维度建模理论知识

0. 思维导图 第 1 章 数据仓库概述 1.1 数据仓库概述 数据仓库是一个为数据分析而设计的企业级数据管理系统。数据仓库可集中、整合多个信息源的大量数据&#xff0c;借助数据仓库的分析能力&#xff0c;企业可从数据中获得宝贵的信息进而改进决策。同时&#xff0c;随着时间的…

算法42:天际线问题(力扣218题)---线段树

218. 天际线问题 城市的 天际线 是从远处观看该城市中所有建筑物形成的轮廓的外部轮廓。给你所有建筑物的位置和高度&#xff0c;请返回 由这些建筑物形成的 天际线 。 每个建筑物的几何信息由数组 buildings 表示&#xff0c;其中三元组 buildings[i] [lefti, righti, heig…

【学网攻】 第(20)节 -- 网络端口地址转换NAPT配置

系列文章目录 提示&#xff1a;这里可以添加系列文章的所有文章的目录&#xff0c;目录需要自己手动添加 例如&#xff1a;第一章 Python 机器学习入门之pandas的使用 提示&#xff1a;写完文章后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目…

C语言应用实例——贪吃蛇

&#xff08;图片由AI生成&#xff09; 0.贪吃蛇游戏背景 贪吃蛇游戏&#xff0c;最早可以追溯到1976年的“Blockade”游戏&#xff0c;是电子游戏历史上的一个经典。在这款游戏中&#xff0c;玩家操作一个不断增长的蛇&#xff0c;目标是吃掉出现在屏幕上的食物&#xff0c…

CTF(5)

一、[SWPUCTF 2021 新生赛]ez_caesar 1、题目 import base64 def caesar(plaintext):str_list list(plaintext)i 0while i < len(plaintext):if not str_list[i].isalpha():str_list[i] str_list[i]else:a "A" if str_list[i].isupper() else "a"…

C++学习Day01之初识C++ Helloworld

目录 一、程序二、输出三、分析与总结 一、程序 #include <iostream> //标准输入输出流 i - input 输入 o - output 输出 stream 流 相当于 stdio.h using namespace std; //使用 标准 命名空间 //程序入口函数 int main() {// cout 标准输出流对象// <&l…

Java学习-案例-ATM系统

案例ATM系统 大致思路&#xff1a; 实现功能&#xff1a; 案例代码&#xff1a; Account类&#xff1a; packageatmDemo; publicclassAccount{ privateStringcardId; privateStringuserName; privatecharsex; privateStringpassWord; privatedoublemoney; privatedoublelimit; …

ICLR 2024 | MolGen: 化学反馈引导的预训练分子生成

MolGen: 化学反馈引导的预训练分子生成 英文题目&#xff1a;Domain-Agnostic Molecular Generation with Chemical Feedback 发表会议&#xff1a;ICLR 2024 论文链接&#xff1a;https://arxiv.org/abs/2301.11259 代码链接&#xff1a;https://github.com/zjunlp/MolGen 目录…

可解释性AI(XAI):构建透明和值得信赖的决策过程

可解释性AI&#xff08;XAI&#xff09;旨在提高人工智能系统的透明度和可理解性&#xff0c;使人们更好地理解AI的决策过程和原理。随着AI技术的广泛应用&#xff0c;XAI成为了一个备受关注的重要领域。它不仅有助于建立人们对AI的信任&#xff0c;还可以帮助解决AI伦理和偏见…

Python flask 表单详解

文章目录 1 概述1.1 request 对象 2 示例2.1 目录结构2.2 student.html2.3 result.html2.4 app.py 1 概述 1.1 request 对象 作用&#xff1a;来自客户端网页的数据作为全局请求对象发送到服务器request 对象的重要属性如下&#xff1a; 属性解释form字典对象&#xff0c;包…

Android状态栏/通知栏图标白底问题

问题及现象 从android L版本开始&#xff0c;为了统一图标样式&#xff0c;会将通知栏、状态栏等显示图标处统一为白底或黑底&#xff0c;以促使开发人员规范图标设计。 从现象看&#xff0c;状态栏会显示一个白底的方框&#xff1b;下拉通知栏展开时的图标为白底方框加圆框…

IEC104 S帧超时判定客户与服务端不匹配造成的异常链接问题分析

2、通过ss命令发现确有链接端口变化&#xff0c;与设备约一天一次的重连&#xff0c;通过抓包&#xff08;tcpdump -vvv -nn port 1001 -w 0926.cap&#xff09;分析得以下现象 2.1、异常情况时未对设备的I帧均匀的回S帧进行确认&#xff0c;正常情况时均匀的回S帧进行确认 2.…

酷开科技依托酷开系统新剧热播,引领潮流风向

随着科技的不断发展&#xff0c;智能电视已经成为了家庭娱乐的主流&#xff0c;是消费者居家休闲放松的好帮手。其中&#xff0c;作为国内智能电视操作系统领军者的酷开系统&#xff0c;一直致力于为消费者提供丰富的内容和贴心的体验。近日&#xff0c;酷开系统新剧热播&#…

仰暮计划|“每次他们吃饭,出来散步,都是背着枪,枪都是装满子弹上好膛,时刻准备着作战和反击”

20世纪70年代中叶&#xff0c;越南结束抗美战争、实现国家统一后&#xff0c;把中国视为“头号敌人”&#xff0c;中越关系急剧恶化&#xff0c;中国边疆的和平、安定和人民的生命财产受到严重威胁。在此情况下&#xff0c;1979年2月17日&#xff0c;遵照中央军委命令&#xff…

车载测试Vector工具CANoe——常见问题汇总(中)

车载测试Vector工具CANoe——常见问题汇总(中) 我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师(Wechat:gongkenan2013)。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 屏蔽力是信息过载时代一个人的特殊竞争力,任何消耗你的人和事,多看一…

【兼容认证】白鲸开源与银河麒麟高级服务器操作系统成功通过测试

2024年1月2日&#xff0c;北京白鲸开源科技有限公司&#xff08;以下简称"白鲸开源"&#xff09;荣幸宣布&#xff0c;白鲸开源旗下产品 WhaleStudio V2.4 已成功通过与麒麟软件有限公司旗下的银河麒麟高级服务器操作系统产品的兼容性测试。 麒麟软件有限公司的银河麒…

elk之简介

写在前面 本文看下es的简介。 1&#xff1a;简介 背后公司&#xff0c;elastic&#xff0c;08年纽交所上市&#xff0c;与腾讯&#xff0c;阿里等云厂商有合作&#xff0c;推出云产品&#xff0c;类似功能的产品由solr&#xff0c;splunk&#xff0c;但使用量es当前遥遥领先…

【初中生讲机器学习】4. 支持向量机算法怎么用?一个实例带你看懂!

创建时间&#xff1a;2024-02-02 最后编辑时间&#xff1a;2024-02-03 作者&#xff1a;Geeker_LStar 你好呀~这里是 Geeker_LStar 的人工智能学习专栏&#xff0c;很高兴遇见你~ 我是 Geeker_LStar&#xff0c;一名初三学生&#xff0c;热爱计算机和数学&#xff0c;我们一起加…