首页
学习
活动
专区
圈层
工具
发布

#数组

【算法提高篇】(十)树状数组模板题全解析:从基础到进阶,刷完这 6 道吃透 BIT

_OP_CHEN

给定数列 a1​,a2​,...,an​,依次进行 q 个操作,操作分两类:

1700

PostgreSQL 表设计必看!字段对齐规则让你省出 20% 磁盘空间

小徐

如果需要存储少量结构化数据,优先用 json(轻量 header),而非数组(超大 header);如果数组元素固定且少,直接拆成普通字段,比数组更省空间。

2510

【算法提高篇】(九)树状数组入门:从原理到实战,一篇吃透 BIT

_OP_CHEN

        因此,区间修改 + 单点查询的问题可以转化为:用树状数组维护差分数组 diff,将原问题的区间修改变为树状数组的两次单点修改,原问题的单点查询变...

7310

【算法提高篇】(七)权值线段树 + 离散化:值域爆炸?这波操作直接拿捏!

_OP_CHEN

普通线段树的节点区间表示数组的下标范围,节点存储的是该下标区间内的信息(如和、最大值);而权值线段树的节点区间表示数据的数值范围,节点存储的是该...

11510

【算法提高篇】(一)线段树之入门篇:从原理到实战,搞定区间操作难题

_OP_CHEN

在学习一个新的数据结构前,我们先搞懂它能解决什么问题,这样才不会学的云里雾里。

16310

【算法提高篇】(二)线段树之区间修改:懒标记的核心奥义与实战实现

_OP_CHEN

在讲懒标记之前,我们先回顾下基础线段树的单点修改逻辑:递归找到目标叶子节点,修改后一路向上pushup更新父节点的信息,整个过程只涉及从根到叶子...

12510

【前端开发之JavaScript】(三)JS基础语法中篇:运算符 / 条件 / 循环 / 数组一网打尽

_OP_CHEN

push方法是数组的内置方法,用于在数组末尾追加一个或多个元素,会自动更新数组的长度,使用时带括号并传入要追加的元素,这是实际开发中新增数组元素的首选方式。

9510

【算法基础篇】(五十七)线性代数之矩阵乘法从入门到实战:手撕模板 + 真题详解

_OP_CHEN

在正式学习矩阵乘法前,我们首先要搞清楚什么是矩阵,以及算法中常用的特殊矩阵有哪些。这些基础概念是后续所有运算的前提,理解透彻才能避免后续踩坑。

37410

2026-02-09:使库存平衡的最少丢弃次数。用go语言,给定两个整数 w、m 和一个整数数组 arrivals(第 i 项表示第 i 天到达的物品种类,天

福大大架构师每日一题

2026-02-09:使库存平衡的最少丢弃次数。用go语言,给定两个整数 w、m 和一个整数数组 arrivals(第 i 项表示第 i 天到达的物品种类,天数...

7310

2026-02-08:大于平均值的最小未出现正整数。用go语言,给定一个整数数组 nums。先计算数组所有元素之和除以元素个数得到平均值。然后从

福大大架构师每日一题

2026-02-08:大于平均值的最小未出现正整数。用go语言,给定一个整数数组 nums。先计算数组所有元素之和除以元素个数得到平均值。然后从正整数中按从小到...

11910

2026-02-04:数组元素相等的最小操作次数。用go语言,给定一个长度为 n 的整型数组 nums。每一步操作可以选取数组中一段相邻且非空的区间

福大大架构师每日一题

2026-02-04:数组元素相等的最小操作次数。用go语言,给定一个长度为 n 的整型数组 nums。每一步操作可以选取数组中一段相邻且非空的区间,把该区间内...

6310

2026-02-03:子序列美丽值求和。用go语言,给定一个长度为 n 的整数数组 nums。 对于任意正整数 g,称 g 的“价值”为:g 乘以数组中满足

福大大架构师每日一题

总的时间复杂度可以概括为 O(M log M + n log M),其中 M 是数组元素的最大可能值(70000),n 是输入数组 nums 的长度。

10210

2026-02-02:没有公共位的整数最大乘积。用go语言,给定一个整数数组 nums,选出两个不同位置的元素(下标不同),要求这两个数在二进制

福大大架构师每日一题

2026-02-02:没有公共位的整数最大乘积。用go语言,给定一个整数数组 nums,选出两个不同位置的元素(下标不同),要求这两个数在二进制表示上没有共同为...

7610

2026-01-31:重排完成顺序。用go语言,给定两个数组:order 长度为 n,包含 1 到 n 的所有编号且互不重复,数组中元素的先后位置表示选手

福大大架构师每日一题

2026-01-31:重排完成顺序。用go语言,给定两个数组:order 长度为 n,包含 1 到 n 的所有编号且互不重复,数组中元素的先后位置表示选手完成比...

6010

2026-02-06:碗子数组的数目。用go语言,给定一个元素互不相同的整数数组 nums。把任意一个连续片段 nums[l..r] 记作“碗”,当且仅当满

福大大架构师每日一题

2026-02-06:碗子数组的数目。用go语言,给定一个元素互不相同的整数数组 nums。把任意一个连续片段 numsl..r 记作“碗”,当且仅当满足:

8410

数据结构空间复杂度

用户12004530

交换函数Swap:冒泡排序的交换逻辑是原地交换(直接操作原数组的两个元素),无论Swap是用临时变量实现(int temp=*a;*a=*b;*b=temp;)...

8910

数据结构时间复杂度

用户12004530

最好情况:任意输入规模的最小运行次数(下界) 例如:在一个长度为N数组中搜索一个数据x 最好情况:1次找到 最坏情况:N次找到 平均情况:N/2次找到 在实际中...

10710

数据结构二叉树介绍

用户12004530

第一种写法的前提是明确规定了树的度为N,也就是说一个根结点的子结点数不能超过该值,用指针数组可以表示

7010

Java 循环结构,超详细整理,适合新手入门

云域A

11010

ARRAY_SIZE宏作用及使用注意事项

一个平凡而乐于分享的小比特

ARRAY_SIZE 宏是C/C++中用于在编译时获取数组元素个数的常用宏。我来详细讲解它的原理、作用和注意事项。

7410
领券