데이터 구조 코스를 수강하고 있는데 ADT (추상적 데이터 유형)로 간주되는 것과 그렇지 않은 것에 대해 다소 혼란스러워합니다. ADT가 아닌 경우 구현해야합니다. .힙은 추상 데이터 유형으로 간주됩니까?
특히 저는 힙에 대해 이야기하고 있습니다.
"힙은 특수 트리 기반 데이터 구조입니다"라는 위키 백과에서 읽은 것은 그것이 ADT라는 의미입니까? 그렇다면 Wikipedia에서 다음 줄을 이해할 수 없습니다. "힙은 우선 순위 큐라는 추상 데이터 형식을 최대한 효율적으로 구현합니다."
내 말은, 힙을 ADT로 만들 수 있고 다른 ADT (이 경우 우선 순위 큐 구현)를 구현할 수 있습니까? ADT의 개념을 이해하고 이진 힙의 컨텍스트에서 이것이 가능하다는 것을 이해합니다. arr[i]
는 I 힙 다른 ADT 구현 배열 반면에 데이터 구조를 사용하여 구현 한 손 ADT 될 수 있는지 여부에 대해 단지 혼란있어 arr[2i]
및 arr[2i + 1]
의 부모 인 배열을 사용하여 구현.
이것에 대한 설명이 필요하십니까
이 질문은 프로그래밍에 관한 것이 아니라 수업을위한 용어에 관한 것 같습니다. http://cs.stackexchange.com/에서 더 나은 행운을 찾을 수 있습니다. –
@DanRoche 당신은 프로그래밍에 관한 것이 아니라 프로그래밍 이론 배경에 대한 자세한 내용을 알고 있습니다. 여기에 질문 할 수 있다고 생각했습니다. 고맙습니다. – Noam
아마도이 질문은 http://cstheory.stackexchange.com/ –