Page 1
2 0 1 4 7 1 0N e w M e m b e r Education Semi-
nar
Page 2
Before entering the Seminar
Page 4
Table ofContents
01Introduce 02Stack 03Queue 04Solving Algorithms
Stack??
Architecture
Applications
Algorithms
Visualization
Queue??
Architecture
Applications
Algorithms
Visualization
Page 6
Part 01Introduce
이 름김남훈 (24-1 기 )나 이26 세 (1989. 12.10)
학 교 한국기술교육대학교전 공인터넷 & S/W & Appliaction
주분야C/C++/Android/SNS LinkageopenAPI/Using SDKOOAD_Design Pattern
관심사Library&Plug-in, NetworkBig Data Mining, Language
Page 9
Part 02Stack
Stack??
접시를 쌓듯이 차곡차곡 쌓아 올린 형태의 자료구조데이터의 삽입과 삭제가 한 쪽 끝에서만 일어남마지막에 들어간 데이터가 제일 먼저 삭제후입선출 구조 : LIFO(Last In, First Out)
선형리스트 구조의 특별한 형태
Page 10
Part 02Stack
Stack Applications1) Interrupt
Page 11
Part 02Stack
Stack Applications2) Sub Program & Recursive Function
Page 12
Part 02Stack
Stack Applications3) Arithmetic
Page 13
Part 02Stack
Stack Architecture1) Variables : top pointer
2) Operation : push, pop
Page 14
Part 02Stack
Stack Visualization
Page 15
Part 02Stack
Stack Visualization
top
Page 16
Part 02Stack
Stack Visualization
Page 17
Part 02Stack
Stack Visualization
Page 18
Part 02Stack
Stack Visualization
Page 19
Part 02Stack
Stack Visualization
top
Page 20
Part 02Stack
Stack Visualization
top
Page 21
Part 02Stack
Stack Visualization
top
Page 22
Part 02Stack
Stack Visualization
top
Page 23
Part 02Stack
Stack Visualization
top
Page 24
Part 02Stack
Stack Visualization
top
Page 25
Part 02Stack
Stack Visualization
top
Page 26
Part 02Stack
Stack Visualization
top
Page 27
Part 02Stack
Stack Visualization
top
Page 28
Part 02Stack
Stack Visualization
top
Page 29
Part 02Stack
Stack Algorithm1) Push 2) Pop
Page 30
Part 02Stack
Stack Algorithm1) C++ Code (Array)
Page 31
Part 02Stack
Stack Algorithm1) C++ Code (Linked List)
Page 33
Table ofContents
01Introduce 02Stack 03Queue 04Solving Algorithms
Stack??
Architecture
Applications
Algorithms
Visualization
Queue??
Architecture
Applications
Algorithms
Visualization
Page 35
Part 03Queue
Queue??
리스트의 한 쪽 끝에서 자료들이 삭제리스트의 다른 한 쪽 끝에서 자료들이 삽입먼저 들어간 데이터가 제일 먼저 삭제선입선출 구조 : FIFO(First In, First Out)
선형리스트 구조의 특별한 형태
후입후출 구조 : LILO(Last In, Last Out)
04Solving Algorithms
Page 36
Part 03Queue
Queue Applications1) Operating System Scheduling
Page 37
Part 03Queue
Queue Applications2) I/O Buffer
Page 38
Part 03Queue
Queue Applications3) Spooler
Page 39
Part 03Queue
Queue Architecture1) Variables : front pointer, rear pointer
2) Operation : enQueue, deQueue
Page 40
Part 03Queue
Queue Visualization
front
rear
Page 41
Part 03Queue
Queue Visualization
enQueue
Page 42
Part 03Queue
Queue Visualization
deQueue
Page 43
Part 03Queue
Queue Visualization
front
rear
Page 44
Part 03Queue
Queue Visualization
front
rear
enQueue
Page 45
Part 03Queue
Queue Visualization
front
rear
enQueue
Page 46
Part 03Queue
Queue Visualization
front
rear
enQueue
Page 47
Part 03Queue
Queue Visualization
front
rear
enQueue
Page 48
Part 03Queue
Queue Visualization
front
rear
deQueue
Page 49
Part 03Queue
Queue Visualization
front rear
deQueue
Page 50
Part 03Queue
Queue Visualization
front
rear
deQueue
Page 51
Part 03Queue
Queue Visualization
front
rear
deQueue
Page 52
Part 03Queue
Queue Algorithm (Array)1) enQueue 2) deQueue
Page 53
Part 03Queue
Queue Algorithm (Array)C++ Code
Page 54
Part 03Queue
Queue Algorithm (Linked List)1) enQueue 2) deQueue
Page 55
Part 03Queue
Queue Algorithm (Linked List)C++ Code
Page 56
Part 03Queue
Queue Algorithm (Linked List)C++ Code
Page 58
Table ofContents
01Introduce 02Stack 03Queue 04Solving Algorithms
Stack??
Architecture
Applications
Algorithms
Visualization
Queue??
Architecture
Applications
Algorithms
Visualization
Page 59
Solving Algorithms
Page 60
Part 04Solving Algorithms
STACK다음과 같은 수식이 주어질 때 같은 짝의 괄호의 위치를 찾는 문제이다 .
( a * ( b + c ) + d )0 1 2 3 4 5 6 7 8 9 10
( a * ( b + c ) + d )
이 경우에는 3 과 7, 0 과 10 이 한 쌍의 괄호이다 .
입력은 공백없이 입력된다 . 입력되는 문자는 소문자 , 소괄호 ,(,+,-,*,/,) 이다 .문자열의 길이는 최대 50 까지 이다 .
입력왼쪽에서 오른쪽을 가면서 먼저 짝이 맞는 순으로 출력하고 , 짝이 맞지 않는 수식은 not match 를 출력한다 .
출력입력 : (a*(b+c)+d)출력 : 3 7 0 10
예시
Page 61
Part 04Solving Algorithms
QUEUE
4 자리 도착수 , 목적수가 주어진다 .
입력
최단 거리를 출력한다 .
출력입력 : 1033 8179출력 : 6
예시입력 : 1373 8017출력 : 7
입력 : 1033 1033출력 : 0
4 자리 수 2 개가 주어진다 . 두 수는 모두 소수 (prime number) 이다 .처음 수는 출발 수이고 , 다음 수는 도착수이다 . 어떤 수에서 다음 수로는 이전 수에서 한 자리 수 만을 변경해서 가능하다 .물론 각 단계별로 만들어지는 수도 소수여야 한다 .출발 수에서 도착수로 가는 최단 거리를 구하라 .