题解 | #迭代器遍历容器#

迭代器遍历容器

https://www.nowcoder.com/practice/0f7ab22e60ee4574a9d9c81412b26595

#include <iostream>
#include <algorithm>
#include <vector>
// write your code here......

using namespace std;

int main() {

    // write your code here......
    vector<int> vec(5);
    for(int i = 0; i < 5; i++){
        cin>>vec[i];
    }
    vector<int>::iterator iter;
    //输出
    for( iter = vec.begin(); iter!=vec.end(); iter++){
        cout<<*iter<<" ";
    }
    cout<<endl;
  
    for(iter = --vec.end(); iter!=vec.begin(); iter--){
        cout<<*iter<<" ";
    }
    if(iter == vec.begin())
        cout<<*iter<<endl;
    return 0;
}
缺点:逆序输出有点冗余
修改:
    for(iter = vec.end(); iter != vec.begin();){
        iter--;
        cout<<*iter<<" ";
    }
	改成这样后就不用考虑,头结点和尾结点的问题

全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务