stl reverse函式 可以對於任何容器進行反轉
阿新 • • 發佈:2019-01-27
#include "stdafx.h"
#include <vector>
#include <iostream>
//#include <math.h>#include <algorithm>using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{ vector<int> arrayInt;
arrayInt.resize(10);
for (int i=0;i<10;i++)
{
arrayInt[i]=i;
}
vector<int> arrayRever;
arrayRever.reserve(arrayInt.size()); //vector反轉 //------------------------------------------------------------------------------
//>>>
//方法一:使用vector自帶的反轉迭代器reverse_iterator,rbegin(),rend()
vector<int>::reverse_iterator riter;
for (riter=arrayInt.rbegin();riter!=arrayInt.rend();riter++)
{
arrayRever.push_back(*riter);
}
//<<<
//------------------------------------------------------------------------------
//------------------------------------------------------------------------------
//>>>
//方法二:使用<algorthm>中的reverse()
//arrayRever=arrayInt;
//reverse(arrayRever.begin(),arrayRever.end());
//<<<
//------------------------------------------------------------------------------ //
for (int i=0;i<arrayRever.size();i++)
{
cout<<"arrayRever["<<i<<"]"<<" "<<arrayRever[i]<<endl;
} return 0;
}
#include <vector>
#include <iostream>
//#include <math.h>#include <algorithm>using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{ vector<int> arrayInt;
arrayInt.resize(10);
for (int i=0;i<10;i++)
{
arrayInt[i]=i;
}
vector<int> arrayRever;
arrayRever.reserve(arrayInt.size()); //vector反轉 //------------------------------------------------------------------------------
//>>>
//方法一:使用vector自帶的反轉迭代器reverse_iterator,rbegin(),rend()
vector<int>::reverse_iterator riter;
for (riter=arrayInt.rbegin();riter!=arrayInt.rend();riter++)
{
arrayRever.push_back(*riter);
}
//<<<
//------------------------------------------------------------------------------
//------------------------------------------------------------------------------
//>>>
//方法二:使用<algorthm>中的reverse()
//arrayRever=arrayInt;
//reverse(arrayRever.begin(),arrayRever.end());
//<<<
//------------------------------------------------------------------------------ //
for (int i=0;i<arrayRever.size();i++)
{
cout<<"arrayRever["<<i<<"]"<<" "<<arrayRever[i]<<endl;
} return 0;
}