【C++STL基础巩固】1.vector可变数组的创建、修改元素、获取大小、清空 | 算法竞赛入门 | 蓝桥杯 | ACM 题单:https://www.starrycoding.com/problem/sheet/2科技 计算机技术 计算机 入门 C++ 编程 C/C++ STL 算法竞赛 蓝桥杯 acm Erik_Tse 发消息
```c //添加一个元素到数组末尾 vector = (int *)realloc(vector, (size + 1) * sizeof(int)); vector[size] = element; // size为当前数组的大小,element为要添加的元素 ``` 3.获取动态数组的大小 ```c //获取数组的大小 size_t size = sizeof(vector) / sizeof(vector[0]); ``` 4.获...
// 获取第一个元素的指针 int* ptr = vec.data(); // 打印第一个元素 std::cout << "First element: " << *ptr << std::endl; return 0; } ``` 在上面的示例中,`vec.data()` 返回指向 `vec` 内部数据的指针,然后将其赋值给 `ptr`。通过 `*ptr` 可以访问第一个元素的值。请注意,如果 ...
vector的元素在内存中连续排列,这一点跟数组一样。这意味着我们元素的索引将非常快,而且也可以通过指针的偏移来获取vector中的元素。 但连续排列也带来了弊端,当我们向vector中间插入一个数据时,整个vector的size变大,在内存中就需要重新分配空间,常规的做法是直接申请一个新的array,并将所有元素拷贝...
2. 添加元素 添加元素是Vector最常用的操作之一。我们可以使用以下方法来向Vector中添加元素: addElement(E obj) 将指定的元素追加到Vector的末尾。 insertElementAt(E obj, int index) 将指定的元素插入到Vector中的指定位置。 addAll(Collection<? extends E> c) 将指定集合中的所有元素追加到Vector的末尾。 3...
capacity用于获取当前为数组分配的空间容量,以元素表示。在任何情况下,size都小于等于capacity。 不同编译器对插入元素时capacity的增长量设置可能不同,vs下基本按照1.5倍增长,而g++下按照2倍增长。 代码示例: 代码语言:javascript 复制 #include<vector>#include<iostream>using namespace std;intmain(){vector<int>v...
在C语言中,要使用vector,首先需要包含头文件<vector.h>。然后可以使用以下方式定义和初始化一个vector: #include<stdio.h> #include<vector.h> intmain(){ vector<int>v;// 定义一个空的vector // 定义并初始化一个有5个元素的vector vector<int>v1={1,2,3,4,5}; // 定义并初始化一个有10个元素...
begin();it<c.end();++it) { b.push_back(*it); } 4.从文件中读取元素向向量中添加 ifstream in("data.txt"); vector<int>a; for(int i;in>>i){a.push_back(i);} 5.常见错误赋值方式 vector<int>a; for(int i=0;i<10;++i){a[i]=i;}//下标只能用来获取已经存在的元素 二.从...
// 输出向量元素 std::cout << "Elements:"; for (auto it = vec.begin(); it !=vec.end(); ++it) { std::cout << " " << *it; } std::cout << std::endl; return 0; } 5. 获取向量的大小和容量 #include <vector> #include <iostream> ...
// 方法一:遍历容器,查找相等元素判断是否存在 { for (const auto& item : strVec) { if (item == target) { std::cout << "method1: find " << target << " exists." << std::endl; break; } } } // 方法二:获取元素个数,通过个数判断是否存在 ...