题解 | #迭代器遍历容器#
迭代器遍历容器
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<<" "; } 改成这样后就不用考虑,头结点和尾结点的问题