2025/12/31 11:27:36
网站建设
项目流程
箱包设计网站,南宁 网站建设 制作,wordpress获取分类标题,wordpress 清理以下内容为学习过程中所记录的笔记
推荐引入万能头文件 #includebits/stdc.h //万能头文件 / 预编译头文件#xff0c;它的本质是包含了 C 标准库中几乎所有常用的头文件#xff08;比如输入输出、字符串、容器、算法、数学函数等#xff09; using namespa…以下内容为学习过程中所记录的笔记推荐引入万能头文件#includebits/stdc.h //万能头文件 / 预编译头文件它的本质是包含了 C 标准库中几乎所有常用的头文件比如输入输出、字符串、容器、算法、数学函数等using namespace std; //使用std命名空间在代码中可以直接使用标准库中的标识符如函数、类、变量等无需额外添加 std:: 前缀vectorvector是变长数组支持随机访问不支持在任意位置O(1)插入。为了保证效率元素的增删一般应该在末尾进行。创建vectorvectorint v;//创建一个空的 vector元素类型为 intvectorint v1(10);//创建一个含有10个元素的 vector所有元素默认初始化为0vectorint v2(10,42);//创建一个含有10个元素的 vector所有元素初始化为42vectorint v3 {1,2,3,4,5};//使用列表初始化创建一个 vector (通过大括号{}直接列出初始化元素称为 “列表初始化”)vectorint a[233];//相当于第一维长233第二维长度变化的 int 数组struct rec{...};vectorrec c;//自定义的结构体类型也可以保存在 vector 中访问元素int x v[0];//访问第一个元素int y v.at(1);//使用 at() 函数访问第二个元素at() 会进行边界检查若超出边界则会抛出异常修改元素v[0] 10;//修改第一个元素O(1)v.push_back(20);//在 vector 末尾添加一个元素O(1)v.pop_back();//删除末尾元素O(1)请注意保证 vector 非空遍历vector//下标遍历//注意 v.size() 返回值为 unsigned int 类型不要进行 -1 操作否则可能会得到一个非常大的数因为是用补码表示的。//不要使用 i v.size() - 1for(int i0;iv.size();i){coutv[i] ;}coutendl;//使用范围for循环//elem 是从 v 中取出来的值//优点方便缺点丢失下标信息for(int elem:v){coutelem ;}coutendl;//如果 vector 存储的是 pair 类型或者结构体c17版本以上可使用结构化绑定来枚举//表示引用枚举不加则是拷贝枚举vectorpairint,int v_pair;for(const auto [x,y] : v_pair){coutx y\n;}查询vector大小int size v.size();//返回vector中元素的个数判空if(v.empty())//如果是空则 v.empty() 会返回一个true否则返回falseif(v.size())//如果非空则 v.size() 返回1为空返回0清空vectorv.clear();//移除所有元素size 变为0O(n)练习题斐波那契数列 | 星码StarryCoding 算法竞赛新手村代码答案#includebits/stdc.h using namespace std; using ll long long; int main(){ int n;cinn; vectorll v; v.push_back(1),v.push_back(1); for(int i3;in;i){ v.push_back(*v.rbegin()*(v.rbegin())); } coutv.back()endl; return 0; }悄咪咪今天是主播生日哦哈哈路过的宝子给主播发句生日祝福感谢么么哒