728x90

프로그래밍 이론 13

4. 선형리스트

선형 리스트 # 원소(atom)는 논리적 레코드의 개념으로 그래프 이론에서 사용하는 노드(node)와 동일한 개념이다. # 리스트(List)는 같은 종류의 자료들을 노드 단위로 구성한 집합으로, 항목(item Or field)의 순서 집합으로 볼 수 있다. # 리스트에는 '선형 리스트'와 '연결 리스트'의 두가지가 있다. # 선형 리스트(Linear list)는 다른 말로 연접 리스트(Dense list) 또는 순서 리스트(Ordered list)라고 하며, 노드를 연속되는 기억 장소에 저장한 리스트다. # 선형 리스트는 각각의 노드의 위치를 색인(index) 번호를 사용하여 표시하므로 포인터가 필요 없다. # 이는 배열을 이용해서 구현하기 때문에 STL의 Vector와 비슷하다. # STL에서는 Lis..

3. 추상 자료형(ADT: Abstract Data Type)

추상 자료형 # 추상 자료형은 '사용자 관점'과 '구현자 관점'에서 생각할 수 있다. # '사용자 관점'에서의 추상 자료형은 '구체적인 기능의 완성과정은 언급하지 않고, 순수하게 어떤 기능이 있는지만 나열한 것'이다. # '구현자 관점'에서의 추상 자료형은 '작업을 수행하기 위한 구체적인 방법과 그 방법을 적용하기 위한 데이터 집합'을 의미한다. # 사용자 관점에서 추상 자료형을 설계할 때는 '일반적인 경우의 작업만 설계한다'는 '일반성(Generality)'의 원칙을 지켜서, '범용성(General Usability)'을 높여야 한다. # 구현자 관점에서 추상 자료형을 구현할 때는 기능이 사용자가 생각한대로 작동할 수 있도록 하는데에 초점을 맞추면 된다. # 이 때, 사용자는 구현자가 내부적으로 어떤식..

1. 자료구조 입문

1. 자료와 자료구조 # 자료(data)는 현실 세계로부터 단순한 관찰이나 측정을 통해서 수집한 사실(fact)들 또는 값(value)들이다. # 자료는 가공되지 않은 상태를 의미하고, 정보(infomation)는 어떤 기준에 의해 정리되고 기록된 것을 의미한다. # 자료구조(data structure)는 자료 개체(data object)의 집합, 자료 값 사이의 관계 그리고 자료에 적용 가능한 함수 또는 연산 등을 의미한다. # 프로그램이란 데이터를 표현하고, 그렇게 표현된 데이터를 처리하는 것이다. # 데이터의 표현은 데이터의 저장을 포함하고, 데어터의 저장을 담당하는 것이 자료구조이다. 2. 자료의 구성 (각각에 대한 설명은 생략) 비트(bit), 바이트(byte), 단어(word), 항목(item..

반응형