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 中的元素,从尾部到首部,并输出到标准输出。

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

相关推荐
AI科技星8 分钟前
光速飞行器动力学方程的第一性原理推导、验证与范式革命
数据结构·人工智能·线性代数·算法·机器学习·概率论
橘颂TA10 分钟前
【剑斩OFFER】算法的暴力美学——leetCode 946 题:验证栈序列
c++·算法·leetcode·职场和发展·结构与算法
闻缺陷则喜何志丹12 分钟前
【状态机动态规划】3686. 稳定子序列的数量|1969
c++·算法·动态规划·力扣·状态机动态规划
liulilittle14 分钟前
OPENPPP2 网络驱动模式
开发语言·网络·c++·网络协议·信息与通信·通信
mjhcsp18 分钟前
C++ AC 自动机:原理、实现与应用全解析
java·开发语言·c++·ac 自动机
寻星探路23 分钟前
【算法通关】双指针技巧深度解析:从基础到巅峰(Java 最优解)
java·开发语言·人工智能·python·算法·ai·指针
余瑜鱼鱼鱼24 分钟前
Java数据结构:从入门到精通(十)
数据结构
wen__xvn24 分钟前
力扣第 484 场周赛
算法·leetcode·职场和发展
好奇龙猫29 分钟前
【大学院-筆記試験練習:线性代数和数据结构(5)】
数据结构·线性代数
YuTaoShao36 分钟前
【LeetCode 每日一题】865. 具有所有最深节点的最小子树——(解法一)自顶向下
算法·leetcode·职场和发展