Skip to main content

추상 자료형 목차 추상적 자료 구조 추상 자료형의 예 같이 보기 외부 링크 둘러보기 메뉴Abstract data typeeh4120827-4

비트바이트트리트삼진법트라이트워드문자문자열대수적 자료형GADT배열연관 배열클래스리스트객체옵션 타입프로덕트 타입레코드집합공용체추상적 자료형자료 구조인터페이스원시 자료형파생형탬플릿형 구성체다형성


자료 구조


컴퓨터 과학자료 구조시간 복잡도인터페이스구현추상화 계층전기 밥솥디스플레이와트전기질의스택컴퓨터 과학자료 구조알고리즘프로그래밍 언어데이터 모델복소수리스트스택큐맵우선순위 큐집합Awk루아펄










(function()var node=document.getElementById("mw-dismissablenotice-anonplace");if(node)node.outerHTML="u003Cdiv class="mw-dismissable-notice"u003Eu003Cdiv class="mw-dismissable-notice-close"u003E[u003Ca tabindex="0" role="button"u003E숨기기u003C/au003E]u003C/divu003Eu003Cdiv class="mw-dismissable-notice-body"u003Eu003Cdiv id="localNotice" lang="ko" dir="ltr"u003Eu003Cpu003Eu003Ca href="/wiki/%EC%9C%84%ED%82%A4%EB%B0%B1%EA%B3%BC:3.1%EC%9A%B4%EB%8F%99_100%EC%A3%BC%EB%85%84_%EA%B8%B0%EB%85%90_%EC%97%90%EB%94%94%ED%84%B0%ED%86%A4" title="위키백과:3.1운동 100주년 기념 에디터톤"u003E3.1운동 100주년 기념 에디터톤u003C/au003E이 3월 11일부터 4월 11일까지 진행됩니다.nu003C/pu003Eu003Cpu003E3월 30일 서울에서 u003Ca href="/wiki/%EC%9C%84%ED%82%A4%EB%B0%B1%EA%B3%BC:%EC%98%A4%ED%94%84%EB%9D%BC%EC%9D%B8_%EB%AA%A8%EC%9E%84/2019%EB%85%84_%EB%8F%85%EC%84%9C_%26_%EA%B3%B5%EB%8F%99_%ED%8E%B8%EC%A7%91" title="위키백과:오프라인 모임/2019년 독서 u0026amp; 공동 편집"u003E2019년 독서 u0026amp; 공동 편집 오프라인 모임u003C/au003E이 열립니다.nu003C/pu003Eu003Cpu003E3월 30일 u003Ca href="/wiki/%EC%9C%84%ED%82%A4%EB%B0%B1%EA%B3%BC:%EC%98%A4%ED%94%84%EB%9D%BC%EC%9D%B8_%EB%AA%A8%EC%9E%84/2019%EB%85%84_3%EC%9B%94_30%EC%9D%BC_%EB%8C%80%EA%B5%AC" title="위키백과:오프라인 모임/2019년 3월 30일 대구"u003E대구광역시에서 오프라인 모임u003C/au003E이 열립니다.nu003C/pu003Eu003C/divu003Eu003C/divu003Eu003C/divu003E";());




추상 자료형




위키백과, 우리 모두의 백과사전.






둘러보기로 가기
검색하러 가기


추상적 자료형(Abstract Data Type, 줄여서 ADT)은 컴퓨터 과학에서 자료들과 그 자료들에 대한 연산들을 명기한 것이다. 추상적 자료형은 구현 방법을 명시하고 있지 않다는 점에서 자료 구조와 다르다. 비슷한 개념의 추상적 자료 구조는 각 연산의 시간 복잡도를 명기하고 있지만 추상적 자료형에서는 이것조차 명기하지 않는다.


추상적 자료형은 인터페이스와 구현을 분리하여 추상화 계층을 둔 것이다. 예를 들어, 전기 밥솥을 추상적 자료형에 비유한다면, 그 속에 들어가는 밥은 자료가 되고, 밥솥에 있는 취사, 예약취사 버튼들과 남은 시간을 표시하는 디스플레이에 어떤 내용들이 표시되어야 하는지를 명기한 것이다. 추상적 자료형에서는 이것들이 어떻게 구성되는지 관심이 없고, 몇 와트의 전기를 소모하는지에 대해서도 관심이 없다.


자료에 대한 연산은 자료에 대하여 질의를 던지는 것과 자료를 변경하기 위한 연산으로 나뉜다. 유명한 자료구조인 스택에서 자료를 변경하기 위한 연산은 기본적으로 push와 pop이 있다. 여기에 자료에 대하여 질의를 던지는 연산으로 스택의 크기를 알 수 있는 size 연산, 스택이 가득차거나 비었는지를 알 수 있는 full, empty 연산이 있고, 추가적으로 pop을 하면 제거될 자료를 볼 수 있는 peek 연산 등을 정의할 수 있다. 만약 여기에 각 연산들은 모두 상수 시간 복잡도(즉, O(1))에 일어나야 한다고 명기한다면 이것은 '추상적 자료 구조'가 된다.




목차





  • 1 추상적 자료 구조


  • 2 추상 자료형의 예

    • 2.1 내장형 추상 자료형



  • 3 같이 보기


  • 4 외부 링크




추상적 자료 구조


추상적 자료 구조는 이론 컴퓨터 과학 분야에서 자료에 대한 일련의 연산이 정의되며, 각각의 연산에 대한 연산 복잡도가 정의된 가상의 자료 저장 공간이다. 이는 자료 구조의 구체적인 구현 방식과는 관련이 없다.


추상적 자료 구조를 올바르게 선택하는 것은 효율적 알고리즘을 설계하고, 연산 복잡도를 추정함에 있어서 필수적이다. 반면, 구체적인 자료구조를 올바르게 선택하는 것은 알고리즘의 효과적인 구현에 중요하다.


이러한 추상화 개념은 프로그래밍 언어 이론에서의 추상적 자료형(Abstract data type, ADT)과 매우 유사하다. 데이터 모델이라는 또 다른 유사한 추상화 개념은 데이터 요소 간의 상호 연관 패턴(이상하게 들리겠지만, 자료 구조의 구조 자체)을 나타낸다.


많은 추상적 자료 구조(그리고 추상적 자료형)의 이름은 구체적 자료 구조의 이름과 동일하다.


  • 스택


  • 연결 리스트

  • 사전


추상 자료형의 예


잘 알려진 추상 자료형에는 복소수, 리스트, 스택, 큐, 맵, 우선순위 큐, 집합 등이 있다.



내장형 추상 자료형


일부 프로그래밍 언어 사양에서는 내장된 ADT를 지원한다. 그 예로, Awk, 루아, 펄과 같은 수많은 스크립트 언어를 들 수 있으며 추상 리스트의 구현체로 간주된다.



같이 보기


  • 자료 구조


외부 링크



  • (영어) Abstract data type in NIST Dictionary of Algorithms and Data Structures










원본 주소 "https://ko.wikipedia.org/w/index.php?title=추상_자료형&oldid=22803274"










둘러보기 메뉴


























(window.RLQ=window.RLQ||[]).push(function()mw.config.set("wgPageParseReport":"limitreport":"cputime":"0.120","walltime":"0.154","ppvisitednodes":"value":163,"limit":1000000,"ppgeneratednodes":"value":0,"limit":1500000,"postexpandincludesize":"value":14915,"limit":2097152,"templateargumentsize":"value":8,"limit":2097152,"expansiondepth":"value":5,"limit":40,"expensivefunctioncount":"value":0,"limit":500,"unstrip-depth":"value":0,"limit":20,"unstrip-size":"value":0,"limit":5000000,"entityaccesscount":"value":1,"limit":400,"timingprofile":["100.00% 100.719 1 -total"," 42.07% 42.372 1 틀:전거_통제"," 32.28% 32.510 1 틀:언어링크"," 27.08% 27.276 2 틀:언어_이름"," 25.36% 25.541 1 틀:자료형"," 21.93% 22.090 1 틀:둘러보기_상자"],"scribunto":"limitreport-timeusage":"value":"0.047","limit":"10.000","limitreport-memusage":"value":1318959,"limit":52428800,"cachereport":"origin":"mw1269","timestamp":"20190318044743","ttl":2592000,"transientcontent":false);mw.config.set("wgBackendResponseTime":122,"wgHostname":"mw1268"););

Popular posts from this blog

Reverse int within the 32-bit signed integer range: [−2^31, 2^31 − 1]Combining two 32-bit integers into one 64-bit integerDetermine if an int is within rangeLossy packing 32 bit integer to 16 bitComputing the square root of a 64-bit integerKeeping integer addition within boundsSafe multiplication of two 64-bit signed integersLeetcode 10: Regular Expression MatchingSigned integer-to-ascii x86_64 assembler macroReverse the digits of an Integer“Add two numbers given in reverse order from a linked list”

Category:Fedor von Bock Media in category "Fedor von Bock"Navigation menuUpload mediaISNI: 0000 0000 5511 3417VIAF ID: 24712551GND ID: 119294796Library of Congress authority ID: n96068363BnF ID: 12534305fSUDOC authorities ID: 034604189Open Library ID: OL338253ANKCR AUT ID: jn19990000869National Library of Israel ID: 000514068National Thesaurus for Author Names ID: 341574317ReasonatorScholiaStatistics

Kiel Indholdsfortegnelse Historie | Transport og færgeforbindelser | Sejlsport og anden sport | Kultur | Kendte personer fra Kiel | Noter | Litteratur | Eksterne henvisninger | Navigationsmenuwww.kiel.de54°19′31″N 10°8′26″Ø / 54.32528°N 10.14056°Ø / 54.32528; 10.14056Oberbürgermeister Dr. Ulf Kämpferwww.statistik-nord.deDen danske Stats StatistikKiels hjemmesiderrrWorldCat312794080n790547494030481-4