3. 강의목표
Data Structures is an essential area of study for computer scientists and for anyone who will ever undertake any serious programming task. This course deals with the fundamentals of organizing and manipulating data efficiently using clean conceptual models. Students study many of the important conceptual data types, their implementation, and analysis of their efficiency. Topics will cover algorithm analysis, lists, trees, priority queues, dictionaries (hash tables, balanced search trees), graphs, strings (tries, pattern matching), and sorting.
4. 강의선수/수강필수사항
- Students are expected to be familiar with Python to understand the course. Note that we will use C/C++ for the main language, however may draw analogy from Python for easy of explanation.
- Those who are not familiar with C/C++ and object-oriented programming must study Chapters 1 and 2 of the textbook before coming to the first lecture.
- Before taking this course, we recommend taking CSED103 to be familiar with C/C++.
5. 성적평가
Grades will be earned on the following basis:
- Midterm and final: 60%
- Homework/Programming Assignment: 40%
6. 강의교재
도서명 |
저자명 |
출판사 |
출판년도 |
ISBN |
Data Structures and Algorithms in C (2nd Edition)
|
Michael T. Goodrich et al.
|
John Wiley & Sons
|
2011
|
978-0-470-38327-8
|
7. 참고문헌 및 자료
Sartaj Sahni, "Data Structures, Algorithms, and Applications in C (2nd Ed.)," Silicon Press, 2004
8. 강의진도계획
1. Algorithm Analysis
2. Lists, Stacks, Queues
3. Trees
4. Priority Queues & Heaps
5. Sorting
6. Binary Search Trees
7. AVL Trees-1
8. AVL Trees-2 (Mid-term Exam)
9. 2-3 Trees & B-Trees
10. Dictionaries & Hashing
11. Graph & Representations
12. Graph Traversals
13. Shortest Path Finding
14. Minimum-Cost Spanning Trees
15. Tries
16. Expression Trees (Final Exam)
9. 수업운영
** Attendance policy **
(1) Attendance checking will be made randomly 5 minutes after class begins
(2) Arriving more than 15 minutes late will be considered one absence
(3) Three tardies will be counted as one absence
(4) “Unexcused” absence is subject to disciplinary action:
- Three absences will lower grade by one third of a letter grade (e.g. from an A- to a B )
- Four absences will result in Failure of the course
10. 학습법 소개 및 기타사항
Homework
- Programming assignments will be released four times during the semester
- Need to start early otherwise can’t finish on time
Self-study
- Lectures may only cover the concepts without touching the details
- The assignments and exams requires you to understand the details in the textbook
- Strongly recommend you to read out the textbook yourself
- Self-study is very important for you to succeed in this course and others
11. 장애학생에 대한 학습지원 사항
- 수강 관련: 문자 통역(청각), 교과목 보조(발달), 노트필기(전 유형) 등
- 시험 관련: 시험시간 연장(필요시 전 유형), 시험지 확대 복사(시각) 등
- 기타 추가 요청사항 발생 시 장애학생지원센터(279-2434)로 요청