Top Banner
DONGEUI UNIVERSITY Data structures 동동동동동 동동동동동동동동 동동동동동 01.1: an Introduction
13

D ata s tructures

Feb 24, 2016

Download

Documents

lenka

D ata s tructures. 01.1: a n I ntroduction. 동의대학교 멀티미디어공학과 이광의교수. c ourse s chedule. 1 주 : 기초지식 I 자료구조란 무엇인가 ? C++ 의 클래스 C++ 포인터 2 주 : 기초지식 II 재귀함수 수학적 귀납법 3 주 ~7 주 : 리스트 / 스택 / 큐 / 정렬 8 주 : 중간시험 9 주 ~14 주 : 트리 / 우선순위큐 / 탐색 / 그래프 15 주 : 기말시험. T oday’s t opic. - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: D ata  s tructures

DONGEUIUNIVERSITY

Data structures

동의대학교 멀티미디어공학과 이광의교수

01.1: an Introduction

Page 2: D ata  s tructures

[email protected]

course schedule 1 주 : 기초지식 I

► 자료구조란 무엇인가 ?► C++ 의 클래스► C++ 포인터

2 주 : 기초지식 II► 재귀함수► 수학적 귀납법

3 주 ~7 주 : 리스트 / 스택 / 큐 / 정렬 8 주 : 중간시험

9 주 ~14 주 : 트리 / 우선순위큐 / 탐색 / 그래프 15 주 : 기말시험

Dept. of Multimedia Engineering, DongEui Univ.(2)

Page 3: D ata  s tructures

[email protected]

Today’s topic 자료구조의 정의

► 정의 1: 자료구조는 자료를 효율적으로 이용할 수 있도록 컴퓨터에 저장하는 방법이다 .

► 정의 2: 자료구조는 추상자료형이다 .► 정의 3: 자료구조는 잘 알려지고 유용한 추상자료형이다 .

C++ 클래스 : 추상자료형의 구현► 클래스 기초► 클래스 구현 예 1► 클래스 구현 예 2

포인터► 포인터 기초► 포인터 활용 예 1

Dept. of Multimedia Engineering, DongEui Univ.(3)

Page 4: D ata  s tructures

[email protected]

The 1st Definition of data structure 자료구조란 무엇인가 ?

► 자료구조는 자료를 효율적으로 이용할 수 있도록 컴퓨터에 저장하는 방법이다 .[wiki]

시작하는 예제► 유선방송 시청에 꼭 필요한 것은 ?

• TV• 리모트 컨트롤러• 채널목록

Dept. of Multimedia Engineering, DongEui Univ.(4)

Page 5: D ata  s tructures

[email protected]

A Starting example: t.v. channel list 1

Dept. of Multimedia Engineering, DongEui Univ.(5)

ch 채널이름0 2 시네마 TV1 3 금강방송 12 4 금강방송 23 5 금강방송 34 6 JTV5 7 CJ 홈쇼핑6 8 KBS17 9 KBS28 10 GS 홈쇼핑9 11 MBC10 12 현대 홈쇼핑11 13 EBS12 14 MGM 13 15 농수산 TV14 16 inet(iTV 녹화 )15 17 우리 홈쇼핑16 18 리얼 TV17 19 K-TV18 20 OUN19 21 아리랑 TV20 22 EBS plus121 23 EBS plus2 22 24 YTN23 25 MBN

ch 채널이름24 26 CEM TV 25 27 코미디 TV26 28 NHK 월드 프리미엄27 29 CNN28 30 불교방송29 31 가톨릭 방송30 32 CTS 기독교 TV31 33 CBS32 34 History33 35 내셔널지오그래픽34 36 Q 채널35 37 JEI 스스로방송36 38 투니버스37 39 챔프38 40 어린이 TV39 41 English TV 40 42 new 중화 TV41 43 KBS Sports42 44 SBS Sports43 45 MBC ESPN44 46 SBS GOLF45 47 퀴 니46 48 MBC 게임47 49 온게임넷

ch 채널이름48 50 FTV49 51 바둑 TV50 52 FOOD 채널51 53 On Style52 54 GTV53 55 Home CGV54 56 OCN55 57 CNTV56 58 무협 TV57 59 MBC Movies58 60 XTM59 61 수퍼액션60 62 KBS 드라마61 63 SBS 드라마62 64 MBC 드라마넷63 65 Xports64 66 KMTV65 67 m.net66 68 MTV6768697071

Page 6: D ata  s tructures

[email protected]

A Starting example: t.v. channel list 1 자료구조란 무엇인가 ?

► 자료구조는 자료를 효율적으로 이용할 수 있도록 컴퓨터에 저장하는 방법이다 .

이용의 의미는 무엇인가 ?► 채널 검색 : chNameOf(5);

chNumOf(“ 리얼 TV”);► 채널 삭제 : deleteNum(14);

deleteName(“MGM”);► 채널 추가 : insertCh(14, “ 동의 TV”);

효율적의 의미는 무엇인가 ?► 채널번호에 따른 채널 검색► 채널이름에 따른 채널 검색► 삭제 , 추가

Dept. of Multimedia Engineering, DongEui Univ.(6)

ch 채널이름0 2 시네마 TV1 3 금강방송 12 4 금강방송 23 5 금강방송 34 6 JTV5 7 CJ 홈쇼핑6 8 KBS17 9 KBS28 10 GS 홈쇼핑9 11 MBC10 12 현대 홈쇼핑11 13 EBS12 14 MGM 13 15 농수산 TV14 16 inet(iTV 녹화 )15 17 우리 홈쇼핑16 18 리얼 TV17 19 K-TV18 20 OUN19 21 아리랑 TV20 22 EBS plus121 23 EBS plus2 2223

Page 7: D ata  s tructures

[email protected]

A Starting example: t.v. channel list 2

Dept. of Multimedia Engineering, DongEui Univ.(7)

ch 채널이름0 31 가톨릭 방송1 3 금강방송 12 4 금강방송 23 5 금강방송 34 35 내셔널지오그래픽5 15 농수산 TV6 18 리얼 TV7 58 무협 TV8 51 바둑 TV9 30 불교방송10 61 수퍼액션11 2 시네마 TV12 21 아리랑 TV13 40 어린이 TV14 49 온게임넷15 17 우리 홈쇼핑16 42 중화 TV17 39 챔프18 27 코미디 TV19 47 퀴 니20 38 투니버스21 12 현대 홈쇼핑22 33 CBS23 26 CEM TV

ch 채널이름24 7 CJ 홈쇼핑25 29 CNN26 57 CNTV27 32 CTS 기독교 TV28 13 EBS29 22 EBS plus130 23 EBS plus2 31 41 English TV 32 52 FOOD 채널33 50 FTV34 10 GS 홈쇼핑35 54 GTV36 34 History37 55 Home CGV38 16 inet(iTV 녹화 )39 37 JEI 스스로방송40 6 JTV41 62 KBS 드라마42 43 KBS Sports43 8 KBS144 9 KBS245 66 KMTV46 19 K-TV47 67 m.net

ch 채널이름48 11 MBC49 48 MBC 게임50 64 MBC 드라마넷51 45 MBC ESPN 52 59 MBC Movies53 25 MBN54 14 MGM 55 68 MTV56 28 NHK 월드 프리미엄57 56 OCN58 53 On Style59 20 OUN60 36 Q 채널61 63 SBS 드라마62 46 SBS GOLF63 44 SBS Sports64 65 Xports65 60 XTM66 24 YTN6768697071

Page 8: D ata  s tructures

[email protected]

A Starting example: t.v. channel list 2 자료구조란 무엇인가 ?

► 자료구조는 자료를 효율적으로 이용할 수 있도록 컴퓨터에 저장하는 방법이다 .

이용의 의미는 무엇인가 ?► 채널 검색 : chNameOf(5);

chNumOf(“ 리얼 TV”);► 채널 삭제 : deleteNum(14);

deleteName(“MGM”);► 채널 추가 : insertCh(14, “ 동의 TV”);

효율적의 의미는 무엇인가 ?► 채널번호에 따른 채널 검색► 채널이름에 따른 채널 검색► 삭제 , 추가

Dept. of Multimedia Engineering, DongEui Univ.(8)

ch 채널이름0 31 가톨릭 방송1 3 금강방송 12 4 금강방송 23 5 금강방송 34 35 내셔널지오그래픽5 15 농수산 TV6 18 리얼 TV7 58 무협 TV8 51 바둑 TV9 30 불교방송10 61 수퍼액션11 2 시네마 TV12 21 아리랑 TV13 40 어린이 TV14 49 온게임넷15 17 우리 홈쇼핑16 42 중화 TV17 39 챔프18 27 코미디 TV19 47 퀴 니20 38 투니버스21 12 현대 홈쇼핑2223

Page 9: D ata  s tructures

[email protected]

The 1st Definition of data structure 자료구조란 무엇인가 ?

► 자료구조는 자료를 효율적으로 이용할 수 있도록 컴퓨터에 저장하는 방법이다 .[wiki]

► 자료는 자료 자체뿐만 아니라 자료를 이용하고자 하는 이용방법 ( 연산 )을 포함한다 .

채널목록 자료는 다음으로 구성된다 .► 자료 : 채널번호와 채널이름 쌍들로 구성된 목록► 연산 : 검색연산 , 삭제연산 , 추가연산 , 등 .

Dept. of Multimedia Engineering, DongEui Univ.(9)

Page 10: D ata  s tructures

[email protected]

The 2nd Definition of data structure 자료구조란 무엇인가 ?

► 자료구조는 자료를 효율적으로 이용할 수 있도록 컴퓨터에 저장하는 방법이다 .[wiki]

► 자료구조는 추상자료형이다 .

추상자료형은 무엇인가 ?► 추상자료형은 객체의 명세와 그 연산의 명세가 객체의 표현과 연산의

구현으로부터분리된 자료형이다 .

► 추상자료형은 객체의 명세와 그 연산의 명세만을 의미한다 .

채널목록에 대한 추상자료형은 무엇인가 ?► 객체의 명세 : 채널번호와 채널이름 쌍들의 집합► 연산의 명세 : 검색연산 , 삭제연산 , 추가연산► 객체의 표현 : 채널번호와 채널이름 쌍들의 집합을 어떻게 저장할

것인가 ?► 연산의 구현 : 위의 객체의 표현방법에 따른 연산의 실현 절차

Dept. of Multimedia Engineering, DongEui Univ.(10)

Page 11: D ata  s tructures

[email protected]

Examples of abstract data type 추상자료형의 예

► C++ 의 각종 변수 : int, bool, float, double, char 등► 음료수자판기 , 전화기를 포함하는 각종 가전제품► 채널목록은 추상자료형인가 ?► 이 세상에 존재하는 모든 객체 ( 대상 , 물건 ,…) 는 어떤 의미에서

추상자료형이다 .

Dept. of Multimedia Engineering, DongEui Univ.(11)

Page 12: D ata  s tructures

[email protected]

The 3rd Definition of data structure 자료구조란 무엇인가 ?

► 자료구조는 자료를 효율적으로 이용할 수 있도록 컴퓨터에 저장하는 방법이다 .[wiki]

► 자료구조는 추상자료형이다 .► 자료구조는 잘 알려지고 유용한 추상자료형이다 .

자료구조 교과목은 무엇을 다루는가 ?► 잘 알려지고 유용한 추상자료형

• 리스트 , 스택 , 큐 , 트리 , 그래프► 상기 추상자료형에 대한 다양한 형태의 구현

• 객체의 표현 : 상기 객체를 어떻게 컴퓨터에 저장할 것인가 ?• 연산의 구현 : 이러한 저장 방법에 대하여 연산은 어떻게 실현될 것인가 ?

추상자료형의 구현은 C++ 의 클래스를 이용하여 구현할 수 있다 .

Dept. of Multimedia Engineering, DongEui Univ.(12)

Page 13: D ata  s tructures

[email protected]

summaries 자료구조란 무엇인가 ?

► 자료구조는 자료를 효율적으로 이용할 수 있도록 컴퓨터에 저장하는 방법이다 .[wiki]

► 자료구조는 추상자료형이다 .► 자료구조는 잘 알려지고 유용한 추상자료형이다 .

도대체 자료구조란 무엇인가 ?

Dept. of Multimedia Engineering, DongEui Univ.(13)