과목 소개

해당 수업은 이론(전용기 교수), 실습(이선아 교수)으로 나누어 진행합니다. 과목의 실습은 두 가지를 고려하여 순서를 배정하였습니다. 첫째, 전용기 교수님 수업과 가급적 일치하도록, 둘째, 2018년 1학기 이성진교수님 수업과의 일관성을 가지도록 주제와 실습을 배치하였습니다. 또한 기본 프로그래밍 언어는 C이나 이해를 돕기 위해 Python 코드를 활용한 설명과 실습을 진행할 수 있습니다. 실습 자료는 매 주차 e-campus를 통해 과제물로 공지하며, 이에 대한 제출물도 e-campus를 통해 관리합니다.

교재 및 참조 문헌

(1) 윤성우의 열혈 자료구조 – C언어를 이용한 자료구조 학습서, 윤성우, 오렌지미디어
(2) 뇌를 자극하는 알고리즘, 박상현, 한빛미디어
(3) 파이썬 자료구조와 알고리즘, 미아 스타인 저, 최길우 역, 한빛미디어
(4) 고전 컴퓨터 알고리즘 인 파이썬, 데이비드 코펙, 최길우 역, 한빛미디어
 
참조 링크
(1) 데이타 구조와 알고리즘, 이성진 교수님 홈페이지,
(2) 자료구조, 생활코딩, https://opentutorials.org/module/1335/8634  
 

실습 및 숙제 계획

주차

주제

실습

숙제

01: 3/17,19

C복습: 포인터와 배열

포인터와 배열

실습 결과 제출

02: 3/24,26

C복습: 구조체

구조체

실습 결과 제출

03: 3/31,2

알고리즘 성능분석, 재귀문

재귀문제, 성능분석

이론 Algorithm 숙제

04: 4/7, 9

링크드 리스트

링크드 리스트

이름순으로 삽입, 삭제 구현

05: 4/14,16

스택

스택

사칙연산이 들어오면 계산

06: 4/21,23

이론 Data Structure 숙제

실습 결과 제출

07: 4/28,30

중간고사

-

-

08: 5/5,7

트리

트리

최소 신장 트리 구하기

09: 5/12,14

탐색

탐색

이론 Searching 숙제

10: 5/19,21

정렬

정렬

실습 결과 제출

11: 5/26,28

그래프

그래프

이론 Sorting 숙제

12: 6/2,4

해시테이블

해시테이블

전화번호부 구현

13: 6/9,11

분할정복

분할정복

그래프 Application 숙제

14: 6/16,18

동적계획법

동적계획법

Longest Common Sequence

구하기

15: 6/23,25

기말고사

-

-

*. 해당 실습과 숙제는 기본 C언어로 진행하며, 이해를 돕기 위해 일부 Python코드를 활용할 수 있습니다.

*. 해당 실습과 숙제는 진행 과정에 변경될 수 있습니다. 

*. The grade of assignment will be subtracted by 1 point each day after the deadline.