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) 이다 .처음 수는 출발 수이고 , 다음 수는 도착수이다 . 어떤 수에서 다음 수로는 이전 수에서 한 자리 수 만을 변경해서 가능하다 .물론 각 단계별로 만들어지는 수도 소수여야 한다 .출발 수에서 도착수로 가는 최단 거리를 구하라 .