TYPE OF COURSE UNIT | Compulsory Course |
LEVEL OF COURSE UNIT | Bachelor's Degree |
YEAR OF STUDY | 1 |
SEMESTER | Second Term (Spring) |
NUMBER OF ECTS CREDITS ALLOCATED | 7 |
NAME OF LECTURER(S) | Associate Professor Serap Altay Arpali
|
LEARNING OUTCOMES OF THE COURSE UNIT |
At the end of this course, the students; 1) To gain the ability of analyzing and designing of algorithms and using existing algorithms. 2) To gain the ability to write generalized codes and data abstraction in software development. 3) To gain the ability to separating big problems in to smaller sub parts for solving. 4) To learn the concept behind the complexity theory and gain the ability to develop appropriate software 5) To gain multidiciplinary working ability.
|
MODE OF DELIVERY | Face to face |
PRE-REQUISITES OF THE COURSE | Yes(BİL101) |
RECOMMENDED OPTIONAL PROGRAMME COMPONENT | It is recommended for the student to take BİL101 and BİL105 courses before. |
COURSE DEFINITION | Following topics are covered in this course:
Analyzing and designing of algorithms and using existing algorithms.
To gain the ability to write generalized codes and data abstraction in software development
Separating big problems in to smaller sub parts for solving.
To learn the concept behind the complexity theory and gain the ability to develop appropriate software
|
COURSE CONTENTS | WEEK | TOPICS |
---|
1st Week | Introduction: Review, two dimensional arrays. | 2nd Week | Class, Data types, Abstract Data Types (ADT) | 3rd Week | Pointers. First laboratory work | 4th Week | Strings, transformations, functions. | 5th Week | Parameter Transition methods, Macros and command line arguments | 6th Week | Structs and Recursive functions | 7th Week | Bitwise operations. Second laboratory work | 8th Week | MIDTERM | 9th Week | List class, list member functions and examples, implementation of iterators and usage with lists. Examples. Third laboratory work | 10th Week | Stack data structure. Stack class, member functions. Using and working with stacks. Examples | 11th Week | Introduction to Queues. Queue class and functions. Working and using queues. Examples. Fourth laboratory work. | 12th Week | Priority queues. Working with priority queues. Member functions. Radix sort algorithm. Examples | 13th Week | Dynamic data structures. Introduction to linked lists. Linked list applications. Doubly linked lists. Circular linked lists. Examples. Fifth laboratory work | 14th Week | Trees. Binary search trees. Designing and developing trees. Tree traversal. Searching, traversing, adding deleting in tree structure |
|
RECOMENDED OR REQUIRED READING | Data Structures with C++ Using STL, 2/E?,William H. Ford, William R. Topp, Prentice Hall
|
PLANNED LEARNING ACTIVITIES AND TEACHING METHODS | Lecture,Presentation,Questions/Answers |
ASSESSMENT METHODS AND CRITERIA | | Quantity | Percentage(%) |
---|
Mid-term | 1 | 30 | Quiz | 4 | 10 | Practice | 6 | 20 | Total(%) | | 60 | Contribution of In-term Studies to Overall Grade(%) | | 60 | Contribution of Final Examination to Overall Grade(%) | | 40 | Total(%) | | 100 |
|
ECTS WORKLOAD |
Activities |
Number |
Hours |
Workload |
Midterm exam | 1 | 2 | 2 | Preparation for Quiz | 3 | 10 | 30 | Individual or group work | 0 | 0 | 0 | Preparation for Final exam | 1 | 40 | 40 | Course hours | 5 | 1 | 5 | Preparation for Midterm exam | 1 | 30 | 30 | Laboratory (including preparation) | 6 | 12 | 72 | Final exam | 1 | 2 | 2 | Homework | 2 | 15 | 30 | Total Workload | | | 211 |
---|
Total Workload / 30 | | | 7,03 |
---|
ECTS Credits of the Course | | | 7 |
|
LANGUAGE OF INSTRUCTION | Turkish |
WORK PLACEMENT(S) | No |
| |