처음엔 itoa의 오타인 줄 알았다. std::iota는 <numeric> 헤더에 정의된 C++ 표준 라이브러리 함수로 배열이나 컨테이너에 연속적 숫자를 할당한다. 시작 반복자, 종료 반복자, 그리고 초기 값의 세 개의 매개변수를 받는다.
#include <numeric>
#include <vector>
std::vector<int> v(10);
std::iota(v.begin(), v.end(), 0); // v는 {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}로 초기화됨
for 반복문을 사용해서 동일한 작업을 수행할 수 있다. 둘 다 O(n) 시간 복잡도를 가지며 유의미한 성능차이는 없을 것 같다.
std::vector<int> v(10);
for(int i = 0; i < v.size(); ++i) {
v[i] = i;
}
'프로그래밍 > C++' 카테고리의 다른 글
C++ ] std::unordered_map과 std::map의 차이, unordered_map의 사용법 (0) | 2024.04.26 |
---|---|
C++ ] std::set 사용법 (0) | 2024.04.22 |
C++ ] leetCode 3005 - Count Elements With Maximum Frequency (0) | 2024.04.16 |
C++ ] std::stack 사용법 (0) | 2024.03.20 |
C++ ] std::pair 사용법 (0) | 2024.03.01 |