관리 메뉴

ComputerVision Jack

자료구조 - Chapter 03 본문

Programming Language/Data Structure

자료구조 - Chapter 03

JackYoon 2020. 2. 26. 15:37
반응형

리스트 (List)

추상 자료형(Abstract Data Type)

구체적인 기능의 완성 과정을 언급하지 않고, 순수하게 기능이 무엇인지를 나열 하는 것

자료형의 정의와 자료형에 대한 연산의 묶음을 지칭한다.

 

리스트 자료구조

리스트 자료구조는 데이터를 나란히 저장한다. 또한 중복된 데이터를 포함한다.

  • 순차 리스트 : 배열을 기반으로 구현된 리스트
  • 연결 리스트 : 메모리의 동적 할당을 기반으로 구현된 리스트

예제 : 간단한 순차 리스트 자료구조 ADT

 

순차 자료구조
ArrayList.c
0.00MB
ArrayList.h
0.00MB

예제 : 순차 리스트 자료구조 활용

  • 리스트 생성 및 초기화 하고, 정수 1~9까지 저장한다
  • 리스트에 저장된 값을 순차적으로 참조하여 그 합을 계산하여 출력하낟.
  • 리스트에 저장된 값 중 2의 배수와 3의 배수에 해당하는 값을 삭제한다.
  • 마지막으로 순차리스트를 한번 출력한다.

출력 결과
ex3-2 listQuizz.c
0.00MB

예제 : 리스트에 구조체 변수 저장하기

리스트에 단순히 정수 뿐만 아니라 각종 데이터를 저장할 수 있다.

ArrayList.h 파일에서 typedef Point * LData 로 수정한다

 

리스트에 구조체 연결하기
ex3-3 struct list.c
0.00MB
point.c
0.00MB
Point.h
0.00MB

배열 기반 리스트 장점

  • 데이터의 참조가 쉽다. 인섹스 값을 기준으로 어디든 참조가 가능하다

배열 기반 리스트 단점

  • 배열의 길이가 초기에 결정 되어야 한다. 변경이 불가능하다.
  • 삭제의 고정에서 데이터의 이동(복사)가 빈번히 일어난다.

 

반응형

'Programming Language > Data Structure' 카테고리의 다른 글

자료 구조 - Chpater 06  (0) 2020.03.02
자료구조 - Chapter 05  (0) 2020.02.28
자료구조 - Chapter 04  (0) 2020.02.27
자료구조 - Chapter 02  (0) 2020.02.25
자료 구조 - Chapter01  (0) 2020.02.24
Comments