티스토리 뷰
iterator란??
iterator는 반복자로써 C++에서 제공하는 라이브러리읻니다. 쉽게 생각하면 C에서 사용하는 포인터와 역할이 비슷하고 좀 더 자세히 말하면 배열의 요소들을 가리키는 포인터라고 할 수 있습니다.
반복자의 종류
입력 반복자(input iterator)
=> 읽기만 가능하여, 순방향으로 이동하고 한 번에 한 개의 원소만 읽을 수 있습니다.
출력 반복자(output iterator)
=> 쓰기만 가능하며, 순방향으로 이동하고 한 번에 한 개의 원소만 쓸 수 있습니다.
순방향 반복자(forward iterator)
=> 읽기와 쓰기 모두 가능하며, 순방향 이동이 가능하고 재할당이 가능한 반복자입니다.
양방향 반복자(bidirectional iterator)
=> 읽기 쓰기 모두 가능하며, 양방향 이동 가능합니다.
임의 접근 반복자(random access iterator)
=> 읽기/쓰기 모두 가능하며, 임의 접근 가능합니다.
Iterator 사용법
std::vector<int>변수명
일반적으로 벡터에서 많이 사용하기 때문에
벡터를 예시로 들었습니다. 벡터 이외에도
map,set,list,deque 등에서도 사용합니다.
for(it=v.begin();it!=v.end();it++)
보통 반복문에서 반복자를 사용하는 방식입니다.
iterator로 배열등의 주소를 받아서 원소를 삽입하거나 삭제할 수 있습니다.
'PL > C++' 카테고리의 다른 글
[자료구조 C/C++] #05. Stack (0) | 2023.07.22 |
---|---|
[자료구조 C/C++] #04. Queue (0) | 2023.07.21 |
[자료구조 C/C++] #03. Set (0) | 2023.07.19 |
[자료구조 C/C++] #2 String (0) | 2023.07.16 |
[자료구조 C/C++] #2 Vector (0) | 2023.07.16 |
- Total
- Today
- Yesterday
- 자료구조
- 자바스크립트
- 유니온 파인드
- 유클리드 호제법
- 스프링 부트 crud 게시판 구현
- 백준
- java
- 스택
- 카운팅 정렬
- c++ string
- 에라토스테네스의 체
- 반복문
- C++ Stack
- 백준 풀이
- 우선순위 큐
- 자바
- 투 포인터
- 알고리즘 공부
- js
- HTML5
- 세그먼트 트리
- 이분 매칭
- CSS
- DP
- DFS
- html
- Do it!
- C++
- BFS
- 알고리즘
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |