顺序表的建立及遍历 (vector解法)

题目:读入n值及n个整数,建立顺序表并遍历输出。

输入格式:

读入n及n个整数

输出格式:

输出n个整数,以空格分隔(最后一个数的后面没有空格)。

输入样例:

在这里给出一组输入。例如

4
-3 10 20 78

输出样例:

在这里给出相应的输出。例如

-3 10 20 78

#include <iostream>
#include <vector>
using namespace std;

int main()
{
    int n;
    cin >> n;

    // 若缺少该判断语句,测试将出现段错误 
    if (n <= 0)
  		return 0;
  	
    vector<int> v;
    
    for (int i = 0; i < n; i++)
    {
	  	int k;
	  	cin >> k;
 		v.push_back(k);    
    }

 // 输出n个整数,以空格分隔(最后一个数的后面没有空格)
 /* 方法一: 
    for (i = 0; i < n; i++)
    {
	  	cout << v[i];
	   	if (i < n - 1)
  	   		cout << " ";
    }
 */
 // 方法二:
    cout << v[0];
    for (i = 1; i < n; i++)
  		cout << " " << v[i];
 
    return 0;
}

小结:

vector容器

1、 动态伸缩(可变大小的数组)。支持快速随机访问。尾部插入删除元素快,其余位置插入删除元素慢。
2、头文件:#include <vector>
3、定义:vector<int> v;
4、成员函数:❗(重点掌握)
v.push_back():在尾部插入元素
v.pop_back():删除末尾元素
v.front():返回第一个元素
v.back():返回最后一个元素,不检查这个元素是否存在
v.begin():返回指向第一个元素的迭代器
v.end():返回指向(尾后元素)最后一个元素之后的迭代器
v.rbegin():返回逆向队列的第一个元素,即v容器的最后一个元素
v.rend():返回逆向队列的最后一个元素的下一个位置,即v容器的第一个元素再往前的一个位置。
v.size():返回容器中实际元素的个数。
v.empty():判断容器是否为空。
v.clear():移除容器中的所有元素
v.erase(pos):删除pos位置的元素,传回下一个元素的位置
v.insert() :插入元素
v.max_size():返回容器能容量的最大数量。
v1.swap(v2):将v1和v2交换。
详细可点击查阅 STL之顺序容器
Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐