📚 목차


요약

  1. 스택은 DFS와 백트래킹에서 사용되며 함수 호출에도 사용된다.
  2. 큐는 BFS와 버퍼로 사용된다.
  3. 힙은 부모 노드의 키 값이 자식 노드의 키 값보다 큰(최대힙), 작은(최소힙) 완전 이진 트리이다.
  4. 힙의 삽입 연산은 삽입할 요소를 최하단에 삽입하고 부모 노드와 비교하여 이루어진다.
  5. 힙의 삭제 연산은 루트 노드를 삭제하고 최하단의 노드를 루트에 삽입한 뒤 자식 노드와 비교하여 이루어진다.
  6. C++ STL의 우선순위 큐는 Defualt가 Max Heap이다.
  7. C++ STL의 우선순위 큐는 ()연산자 오버로딩이 선언된 구조체를 통해 특정 조건으로 정렬할 수 있다.
  8. C++ STL의 우선순위 큐는 Greater 함수를 사용하여 Min Heap으로 구현할 수 있다.

1. 스택 (Stack)

1. 스택의 구조

KakaoTalk_20240119_095902592.jpg