본문 바로가기

Programing/자료구조

리스트


리스트 : 자료를 순서대로 저장하는 자료 구조
일직선으로 서로 연결되어 있기 때문에 선형 구조의 특성이 있다.

선형구조 - 리스트, 스택, 큐, 덱 등이 포함됨


리스트의 예

문자리스트 : 문자 자료를 차례대로 연결하는 리스트, 문자열이라고도 한다.
 D

저장되는 자료 : 각각의 문자

문자열 리스트 : 문자열 자료를 차례대로 저장
 D \0   
\0           
 A R \0 
저장되는 자료가 문자열이기 때문에 문자열의 제일 마지막 글자가 '\0(NULL)'이다.
빈 공백 문자열의 첫번째 문자는 '\0'이다.

행렬

 

 1  2   3 
 4   5  6
 7  8  9


다항식을 저장하는 리스트 : 계수의 값을 저장한다.

 1


x^4+2x^3+3x^2+4x+5

리스트의 추상 자료형
리스트 사용에 필요한 기본적인 연산들

이름 입력  출력   설명
 리스트생성  createList() 최대 원소 개수 n   리스트 1   최대 n 개의 원소를 가지는 공백 리스트 1을 생성 
 리스트 삭제  deleteList()  리스트 1 N/A  리스트의 모든 원소 제거 
 원소 추가 가능 여부 판단  isFull()  리스트 1  True/False  리스트의 원소 개수가 최대 원소 개수와 같은지를 반환, 배열 리스트인 경우에만 의미 있음
 원소 추가  addElement()  리스트 1
원소위치 p
원소 e
 성공/실패 여부  원소 e를 리스트의 특정 위치 p에 추가 
 원소 제거  removeElement()   리스트 1
 원소 위치 p
 성공/실패 여부   리스트의 위치 p에 있는 원소를 제거 
 리스트 초기화  clearList()  리스트 1  N/A  리스트의 모든 원소를 제거 
 원소 개수  getListLength()  리스트 1
 원소 위치 p
 원소(Element)   리스트의 위치 p에 있는 원소를 반환 
 원소 반환  getElement()  리스트 1
 원소 위치 p
 원소(Element)   리스트의 위치 p에 있는 원소를 반환 

주의 : 원소 추가 제거시, 0부터 시작되는 인덱스 임을 주의
예 ) 2번째, 인덱스 값 1


참고  :  열혈강의 자료구조

'Programing > 자료구조' 카테고리의 다른 글

[리스트] 연결리스트  (0) 2012.01.21
[리스트] 배열리스트  (0) 2012.01.20