[STL] 12. <algorithm>에 추가된 새로운 함수들 iota
데이터셋을 시퀸스(연속적인)한 값으로 채우고 싶을 때는 iota 알고리즘을 사용합니다.
앞서 소개한 알고리즘들은 <algorithm> 헤더 파일에 정의 되어 있는 것에 반해 iota 알고리즘은 <numeric> 헤더 파일에 정의 되어 있습니다.
itoa
template<class ForwardIterator, class T>
void iota(ForwardIterator first, ForwardIterator last, T value);
아래는 예제 코드와 결과 입니다.
#include <iostream>
#include <vector>
#include <numeric>
using namespace std;
int main()
{
vector<int> Numberlist;
Numberlist.push_back( 2 );
Numberlist.push_back( 5 );
Numberlist.push_back( 7 );
iota( Numberlist.begin(), Numberlist.end(), 2 );
for( auto IterPos = Numberlist.begin(); IterPos != Numberlist.end(); ++IterPos )
{
cout << *IterPos << endl;
}
return 0;
}
< 결과 >
위 예제를 보면 아시겠지만 iota의 세 번째 인자의 값이 시작 값이고, 이후에 값이 하나씩 증가합니다.