본문 바로가기
Language/C++

[인프런] 3일차- 알고리즘을위한 C++

by 담백로봇 2023. 4. 29.

[P 62~]

 

이터레이터(iterator)

=> 컨테이너에 저장되어 있어는 요소의 주소를 가리키는 개채 (포인터를 일반화 한것으로 이터레이터는 컨테이너 범위안에 요소들을 순회하는 과정을 담당하는것으로 이해하자) 

 

특징으로는 1) 주소값을 바로 반환하지 못하기에 &*  붙여서 반환 가능. (아... 그래서 그냥 cout 프린트할려면 에러..)

2) 값을 반환하기위해서는 * 포인터 붙여주기

또다른 방법은 

== "1 2 3 4 5"

이 방법은 반드시 숙지하고 숙지해야한다. 매우 자주 쓰이는 포맷으로 인숙해지자.

 

함수(Function)

fill() : 모든 값으로 초기화 할 수 있음

memset() : -1, 0으로만 초기화가 가능함.  fill() 보다 빠르기 때문엥 시간적으로 더 최적화 할 수 있음.

 

  • fill의 특징으로는 O(n)시간복잡도 , fill(시작값, 끝값, 초기화값)의 포맷을 가짐

 

여기서 주의할점은 시작값을 포함하는위치에서 끝값의 미만까지 초기화가 진행된다. 위 fill에서의 [ ] 안의 설정이 [4][5]로 되어있는 이유는 [4][4]까지만 초기화되도록하기위해서.

 

  • memset( 배열의 이름 ,(0 혹은 -1) , 배열의 크기) 포맷


[~p69]

 

c++과 공부했던거와 회사다니며 실수했던 코드 내용들이 스쳐간다...

댓글