힙은 값을 포함하는 "노드"로 이루어진 데이터 구조입니다. 일반적인 힙에는 맨 위에 루트 노드가 있으며, 바로 아래에 두 개 이상의 자식 노드가 있을 수 있습니다. 각 노드에는 두 개 이상의 자식 노드가 있을 수 있으므로, 힙은 자식 노드가 추가될 때마다 더 넓어집니다. 시각적으로 표시하면 힙은 거꾸로 뒤집힌 트리처럼 보이며, 전체적인 모양도 힙과 비슷합니다.

힙의 각 노드에는 두 개 이상의 자식 노드가 있을 수 있지만(이를 "자식"이라고도 함), 대부분의 힙은 각 노드에 자식 노드를 두 개만 허용합니다. 이러한 유형의 힙을 이진 힙이라고도 하며, 정렬된 데이터를 저장하는 데 사용할 수 있습니다. 예를 들어, "이진 최대 힙"은 루트 노드에 가장 큰 값을 저장합니다. 두 번째와 세 번째로 큰 값은 루트 노드의 자식 노드에 저장됩니다. 트리 전체에서 각 노드는 두 자식 노드 중 어느 것보다도 큰 값을 가집니다. "이진 최소 힙"은 그 반대이며, 루트 노드에 가장 작은 값을 저장하고 각 노드는 자식 노드보다 작은 값을 가집니다.

컴퓨터 과학에서 힙은 간단한 다이어그램으로 그려지는 경우가 많습니다. 하지만 실제로 힙에 데이터를 저장하는 일은 더 복잡합니다. 힙을 만들려면 프로그래머가 알고리즘을 개별적으로 작성하여 데이터를 삽입하고 삭제해야 합니다. 힙에 삽입된 값은 일반적으로 배열에 저장되며, 프로그램에서 이 배열을 참조할 수 있습니다. 힙의 데이터는 이미 정렬되어 있으므로 특정 값을 효율적으로 검색할 수 있습니다.

NOTE: "힙"은 동적으로 할당된 메모리를 설명하는 데 사용되는 프로그래밍 용어이기도 합니다. 이 메모리 블록은 실행 중인 애플리케이션에서 액세스할 수 있습니다. 힙의 메모리는 동적으로 할당되므로 사용 중인 메모리의 양에 따라 크기가 늘어나거나 줄어들 수 있습니다.

업데이트됨 August 2, 2012 작성: Per C.

quiz지식 테스트하기

Digital marketing services are collectively known as what?

A
Martech
0%
B
Digitech
0%
C
ITM
0%
D
CST
0%
Correct! Incorrect!     View the Martech definition.
More Quizzes →

Tech Terms 컴퓨터 사전

이 페이지의 힙에 대한 정의는 TechTerms.com의 저자가 작성한 원본 정의입니다. 이 페이지를 참조하거나 이 정의를 인용하려면 정의 바로 아래에 있는 녹색 인용 표시줄을 사용하세요.

저희의 목표는 컴퓨터 용어를 이해하기 쉬운 방식으로 설명하는 것입니다. 게시하는 모든 정의에서 정확성과 간결함을 추구합니다. 이 정의에 대한 피드백이 있거나 새로운 기술 용어를 제안하고 싶으시면 문의해 주세요.

Tech Terms 뉴스레터

매일 또는 매주 발행되는 뉴스레터로 기술 지식을 향상시키세요! 지금 구독하고 새로운 용어와 퀴즈를 이메일로 받아보세요.

무료 TechTerms 뉴스레터 구독하기

이메일을 얼마나 자주 받고 싶으신가요?

각 이메일에 포함된 링크를 통해 언제든지 구독을 취소하거나 수신 빈도를 변경할 수 있습니다. 질문이 있으신가요? 문의해 주세요.

참고: 뉴스레터는 영어로 발송됩니다.