Advanced Computer Programming(INF114-A)
| Course Code | Course Name | Semester | Theory | Practice | Lab | Credit | ECTS |
|---|---|---|---|---|---|---|---|
| INF114-A | Advanced Computer Programming | 2 | 2 | 0 | 2 | 3 | 5 |
| Prerequisites | |
| Admission Requirements |
| Language of Instruction | French |
| Course Type | Compulsory |
| Course Level | Bachelor Degree |
| Course Instructor(s) | Pınar ULUER puluer@gsu.edu.tr (Email) |
| Assistant | Şükrü Demir İnan ÖZER (Email) |
| Objective | In this course, the fundamental concepts covered in the first semester course "Introduction to Programming" are consolidated. Particularly the topics of pointers, dynamic memory allocation and management, introduction to algorithm analysis, fundamental principals of algorithms, sorting algorithms and algorithmic modeling are elaborated. In the course practice (lab sessions) C programming language and the Linux operating system are used. |
| Content |
- Introduction and Reminders - Dynamic Memory Allocation - Linked List - Stack and Queue - Algorithmic analyze - Fundamentals: Recursion, search, divide and conquer - Sorting algorithmes - Algorithmic modeling |
| Course Learning Outcomes |
- In-depth knowledge of C programming - Knowledge of memory management, basic data structures, sorting algorithms - Ability to model and design algorithms - Ability to analyze algorithms |
| Teaching and Learning Methods | Class lectures, discussion, question-answer, problem solving, lab and project |
| References |
Algorithms, Robert Sedgewick and Kevin Wayne, Pearson, 2011 The Algorithm Design Manual, Steven S. Skiena, Springer, 2008 Introduction to Algorithms, Cormen, Leiserson, Rivest & Stein, MIT Press, 2009 Understanding and Using C Pointers, Richard Reese, O’Reilly Media, 2013 |
Theory Topics
| Week | Weekly Contents |
|---|---|
| 1 | Introduction and Reminders |
| 2 | Dynamic Memory Allocation |
| 3 | Linked List |
| 4 | Linked List Operations |
| 5 | Stack and Queue |
| 6 | Introduction to Algorithmic Analysis |
| 7 | Big-Oh Notation |
| 8 | Midterm Exam |
| 9 | Fundamentals : Recursion versus Iteration |
| 10 | Fundamentals : Search, divide and conquer |
| 11 | Sorting Algorithms |
| 12 | Algorithmic Analysis of Sorting Algorithms |
| 13 | Algorithmic Design |
| 14 | Algorithmic Design & Current Examples |
Practice Topics
| Week | Weekly Contents |
|---|---|
| 1 | Reminders |
| 2 | Dynamic Memory Allocation |
| 3 | Linked List |
| 4 | Linked List Operations |
| 5 | Stack and Queue |
| 6 | Introduction to Algorithmic Analysis |
| 7 | Big-Oh Notation |
| 8 | Midterm Exam |
| 9 | Fundamentals : Recursion versus Iteration |
| 10 | Fundamentals : Search, divide and conquer |
| 11 | Sorting Algorithms |
| 12 | Algorithmic Analysis of Sorting Algorithms |
| 13 | Algorithmic Design |
| 14 | Students' Project Presentation |
Contribution to Overall Grade
| Number | Contribution | |
|---|---|---|
| Toplam | 0 | 0 |
In-Term Studies
| Number | Contribution | |
|---|---|---|
| Toplam | 0 | 0 |
| No | Program Learning Outcomes | Contribution | ||||
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | ||
| Activities | Number | Period | Total Workload |
|---|---|---|---|
| Total Workload | 0 | ||
| Total Workload / 25 | 0.00 | ||
| Credits ECTS | 0 | ||


