记得之前我们用C语言实现过顺序表,vector本质上也是顺序表,一个能够动态增长的数组。
💡 收获预期: ✔ 写出更健壮的C++代码 ✔ 深入理解面向对象设计 ✔ 掌握模板编程基础 📌 编程箴言: “好的C++代码就像好酒,需要时间沉淀...
在实现vector之前,我们先看看它的源码。很大部分我们都看不懂,直接看是看不懂的。所以主要看关键词和模块的功能,不追求每个都看懂。
它给了我们这个接口:vector<vector<int>> 这代表什么?vector 里 存放着 vector<int>,也就是数组的每个元素都是整型数组
通过查看官方文档我们知道,vector是个可以变化的数组,是个容器,可以储存一系列数据,
前面我们学习C++的string部分,其中的接口,函数都很多,vector相较与string的学习就会轻松很多,接下来我们将一起探索神奇的vector!!!
2025-11-30:树中找到带权中位节点。用go语言,给出一个含 n 个节点(编号 0 到 n-1)的带权无向树,树的根定为节点 0。树用长度为 n-1 的数...
vector是STL中的一种容器,本质上是顺序表。它和string类的结构很相似,其也有size、capacity、数组等,不同的是string底层只是字符数组...
在 C++ 标准模板库(STL)中,vector 是最常用的容器之一,它以动态数组的形式存在,兼顾了数组的随机访问效率和动态扩容的灵活性。很多开发者日常使用 v...
“闰六月”:是农历(阴历)中的一种置闰现象🌙,专门用来协调农历与回归年(地球绕太阳公转一周的时间)的差异而设置的呢~ 简单一点说: “闰六月” 就是指在农...
树型结构是⼀类重要的 非线性数据结构 • 有⼀个特殊的结点,称为根结点,根结点没有前驱结点。 •除根结点外,其余结点被分成 个互不相交的集合,其中每⼀个集合...
vector是动态数组,当空间不足时需要扩容。其扩容机制通常是重新申请一块更大的内存(一般是原容量的1.5倍或2倍),然后将原数据拷贝到新内存,最后释放原内存。...
前面我们解释过,string类比STL诞生要早几年,STL很多容器和string都具有相似性,但是string的很多接口非常鸡肋,而且数量多——一百多个接口,博...
假设我们按之前的经验,使用dp[i]表示从0到i能偷窃到的最高金额。并试着写出状态转移方程。而我们只知道dp[i-1]是0到i-1能偷窃的最高金...
0表示平原,正数表示高地,负数表示凹地,那么当洪水来临时这些凹地会被优先灌满。而我们要找的正是这些联通块,如:
迭代器失效不只是针对vector类,其他容器也会出现,但最底层的原因都是一样的,所以这里就以vector为例进行讲解。
专家级难度(难度系数10)的IO竞赛题目是竞赛中的终极挑战,代表了当前算法和程序设计的最高水平。这类题目不仅要求选手掌握深厚的算法理论基础,还需要具备超强的问题...
高级难度的IO竞赛题目是竞赛中的顶级挑战,也是区分顶尖选手的关键。2025年的高级难度(难度系数8-9)题目综合考察了选手的算法设计、数学建模、问题分析和代码实...
中级难度的IO竞赛题目是竞赛中的核心部分,也是选手们拉开差距的关键。2025年的中级难度(难度系数6-7)题目综合考察了选手的算法设计、数据结构应用、数学建模和...