Data Structure 4

자료구조 - 스택(Stack)

스택의 정의 스택이란 여러 개의 데이타 항목들이 일정한 순서로 나열된 자료 구조로, 한쪽 끝에서만 새로운 항목을 삽입하거나 기존 항목을 삭제할 수 있도록 고안된 것이다. 스택의 성질 스택에 저장된 데이타 항목들 중에 먼저 삽입된 것은 나중에 삭제되고, 나중에 삽입된 것이 먼저 삭제된다. 그래서 스택을 후입 선출 리스트(Last- In-First-Out List)라고 부른다. 선입 선출법(FIFO)을 사용하는 큐와는 상반된 성질을 가진다. 스택의 구조 스택은 기저(base)로부터 데이타 항목들을 차례로 쌓아올린 모양을 가진다. 삽입과 삭제는 현재 저장된 최상위 항목이 위치한 top 에서만 일어난다. top 위치는 "스택 포인터"라는 지시자가 가리킨다. 스택 포인터는 스택 기저에서 시작하여 항목이 삽입되면 ..

algorithm 2007.12.17

자료구조 - 연결 리스트 (Linked List)

연결 리스트의 구조 연결 리스트에서는 각 데이터 항목들이 기억장소내의 어떤 위치에 어떤 항목이 있는 지를 표시해 주어야 한다. 이를 위해 데이터 항목에는 값뿐만 아니라 다음 항목의 위치 정보도 함께 저장해둔다. 위치정보의 저장에는 포인터가 사용된다. 연결 리스트에서의 포인터 연결 리스트에서 포인터는 각 항목의 다음 순서인 항목이나 앞 순서인 항목의 위치를 가르키는 지시자이다. 연결 리스트의 마지막 노드에는 다음 순서인 항목이 없고, 첫번째 노드에는 이전 순서인 항목이 없으므로 이들 포인터는 null로 해주어야 한다. 포인터는 연결 리스트의 핵심이다. 연결 리스트에서 공통적인 사항은 데이터 항목 간의 결합이 데이터 항목 자체 내에 포함되어 있는 정보에 의해 포인터의 형식으로 정의된다는 것이다. 이런 사실은..

algorithm 2007.12.17

자료구조의 종류

☞ 선형 구조 자료가 일렬로 연결되어 있는 모양으로 구성하는 방법.예 ) 배열과 레코드, 연결 리스트, 스택과 큐 등 ☞ 비선형 구조 자료들의 구성이 일렬로 연결되는 것이 아니라 특별한 모양으로 연결되어 있는 구조.예 ) 트리와 그래프 ※ 자료구조 선택시 고려되는 기준 자료의 양 자료의 활용 빈도 자료의 갱신 정도 사용 가능한 기억 용량 처리 시간의 제한성 프로그래밍의 용이성

algorithm 2007.12.17

자료구조의 구성

비트(Bit) : 비트(bit)는 이진수(binary digit)의 약자이며, 이진수의 한 자리수를 나타내는 기본 단위이 다. 1비트로 표현할 수 있는 값은 0과 1이다. 만약 어떤 장치에 2가지 이상의 상태 또는 값 이 존재한다면 특정한 상태를 표현하는데 한 개 이상이 비트가 소요된다. 즉, 00,01, 10, 11 의 4(=22)가지 상태를 표현하기 위해서는 2개의 비트가 요구되며, 8(=23)가지의 상태는 3개 의 비트가 요구된다. 이와 같이 비트를 이용하여 많은 자료를 수용하기 위해서는 여러 개의 비트 모임이 필요하며, 이 비트 모임을 비트 스트링(bit string)이라고 한다. 니블(Nibble) : 4개의 비트들이 기억공간에 연속적으로 모여서 이루어진 단위를 말한다. 1 nibble = 4b..

algorithm 2007.12.17