목록Computer Science/자료구조 (2)
계발자 블로그
우선 순위 큐(Priority Queue) 일반적인 큐(Queue)는 먼저 들어온 데이터가 먼저 나가는 First-In First-Out의 FIFO 구조입니다. 우선 순위 큐는 들어간 순서에 상관없이 우선 순위가 높은 데이터가 먼저 나오는 것입니다. 우선 순위 큐는 힙 자료구조를 이용해 구현할 수 있습니다. 완전 이진 트리인 힙 구조이고 최대 힙입니다. 여기에 9가 추가 되었습니다 그럼 완전 이진 트리의 조건을 만족시키기 위해 왼쪽부터 채워져서 현재 자리에 위치하게 됩니다 그럼 9는 최대 힙 구조를 만족 시키기 위해 처음 부모 노드였던 3과 자리를 바꾸고 또 부모 노드였던 6과 자리를 바꾸게 됩니다. Push 연산을 봤으니 삭제하는 Pop 연산을 보겠습니다 최대 힙 구조에서 우선도가 가장 높은 17이 빠..
Data Structure 자료구조란? 사전적인 의미는 자료(Data)의 집합의 의미하며, 각 요소들이 논리적으로 정의된 규칙에 의해 나열되며 자료에 대한 처리를 효율적으로 수행할 수 있도록 자료를 구분하여 표현한 것이라고 합니다. 쉽게 말하면 현실을 프로그래밍 적으로 표현 하는 것이라고 할 수 있습니다 또한 큰 데이터를 효율적으로 관리하는 것 역시 자료구조의 중요한 목적이라고 할 수 있습니다 예를 들어 집에 한권의 책이 있다면 굳이 정리할 필요가 없습니다 그런데 만약 100권 500권 있다면 이걸 그냥 냅두면 집이 매우 엉망이거나 원하는 책을 찾기 어려울 것입니다. 하지만 이것을 책장을 이용해 정리를 한다면 책이 차지하는 공간도 작아지고 필요한 책을 빠르게 찾을 수 있을 것입니다. 컴퓨터에서도 마찬가지..