77.每日一练:迭代器遍历容器(牛客)

目录

问题描述:

代码解决以及思想

知识点


问题描述:

代码解决以及思想

cpp 复制代码
#include <iostream>
// write your code here......
#include <vector>

using namespace std;

int main() {

    // write your code here......
    vector<int> v;
    
    for (int i = 0; i < 5; i++) {
        int num;
        cin >> num;
        v.push_back(num);
    }

    for (vector<int>::iterator it = v.begin(); it != v.end(); it++) {
        cout << *it << " ";
    }
    cout << endl;

    for (vector<int>::reverse_iterator it = v.rbegin(); it != v.rend(); it++) {
        cout << *it << " ";
    }
    cout << endl;

    return 0;
}

知识点

  1. 正向迭代输出: 使用正向迭代器 vector<int>::iterator,通过 v.begin() 获取 vector 的首元素迭代器,通过 v.end() 获取尾后(即最后一个元素之后)的迭代器,然后使用迭代器遍历 vector 中的元素,并输出到标准输出。

  2. 反向迭代输出: 使用反向迭代器 vector<int>::reverse_iterator,通过 v.rbegin() 获取 vector 的逆向(即从尾部到首部)开始的迭代器,通过 v.rend() 获取逆向迭代的结束位置,然后使用反向迭代器遍历 vector 中的元素,从尾部到首部,并输出到标准输出。

写在最后:以上就是本篇文章的内容了,感谢你的阅读。如果感到有所收获的话可以给博主点一个赞哦。如果文章内容有遗漏或者错误的地方欢迎私信博主或者在评论区指出~

相关推荐
霁月风几秒前
设计模式——观察者模式
c++·观察者模式·设计模式
橘色的喵1 分钟前
C++编程:避免因编译优化引发的多线程死锁问题
c++·多线程·memory·死锁·内存屏障·内存栅栏·memory barrier
泉崎5 分钟前
11.7比赛总结
数据结构·算法
你好helloworld7 分钟前
滑动窗口最大值
数据结构·算法·leetcode
何曾参静谧37 分钟前
「C/C++」C/C++ 之 变量作用域详解
c语言·开发语言·c++
AI街潜水的八角1 小时前
基于C++的决策树C4.5机器学习算法(不调包)
c++·算法·决策树·机器学习
白榆maple1 小时前
(蓝桥杯C/C++)——基础算法(下)
算法
JSU_曾是此间年少1 小时前
数据结构——线性表与链表
数据结构·c++·算法
sjsjs111 小时前
【数据结构-合法括号字符串】【hard】【拼多多面试题】力扣32. 最长有效括号
数据结构·leetcode
此生只爱蛋2 小时前
【手撕排序2】快速排序
c语言·c++·算法·排序算法