CEN203 Data Structures

5 ECTS - 3-2 Duration (T+A)- 3. Semester- 4 National Credit

Information

Unit FACULTY OF ENGINEERING
COMPUTER ENGINEERING PR. (ENGLISH)
Code CEN203
Name Data Structures
Term 2015-2016 Academic Year
Semester 3. Semester
Duration (T+A) 3-2 (T-A) (17 Week)
ECTS 5 ECTS
National Credit 4 National Credit
Teaching Language İngilizce
Level Üniversite Dersi
Type Normal
Label C Compulsory
Mode of study Yüz Yüze Öğretim
Catalog Information Coordinator
Course Instructor Prof. Dr. SELMA AYŞE ÖZEL (Güz) (A Group) (Ins. in Charge)


Course Goal / Objective

The objectives of this course are to introduce students how to analyze algorithms and data structures in terms of running time and memory requirements; to investigate basic sorting and searching algorithms and to analyze them in terms of memory requirements and running time perfromance; to introduce linked lists, stack, queue, tree, and graph data structures as well as their array and pointer based implementations; and to make programming practices using the learned data sturctures.

Course Content

Definition of the concepts "data structures" and "data models". Run time and memory requirement analysis of algorithms. Insertion sort, Selection sort, Bubble sort, Merge sort, Heap sort, Quick sort algorithms and their analysis. Sequential search, Binary search, and hashing algorithms and their analysis. Linked lists and their applications. Stack and queue data structures and their applications. Tree and graph data models and their applications.

Course Precondition

Yok

Resources

Notes



Course Learning Outcomes

Order Course Learning Outcomes
LO01 Be able to compute run time and memory requirement of the algorithms. Bu able to implement linked lists, stack, queues, tree and graph data structures using arrays and pointers; and to apply these data structures to real life programming problems. Be a


Relation with Program Learning Outcome

Order Type Program Learning Outcomes Level
PLO01 - Has capability in the fields of mathematics, science and computer that form the foundations of engineering
PLO02 - Identifies, formulates, and solves engineering problems, selects and applies appropriate analytical methods and modeling techniques,
PLO03 - Analyzes a system, its component, or process and designs under realistic constraints to meet the desired requirements,gains the ability to apply the methods of modern design accordingly.
PLO04 - Ability to use modern techniques and tools necessary for engineering practice and information technologies effectively.
PLO05 - Ability to design and to conduct experiments, to collect data, to analyze and to interpret results
PLO06 - Has ability to work effectively as an individual and in multi-disciplinary teams, take sresponsibility and builds self-confidence
PLO07 - Can access information,gains the ability to do resource research and uses information resources
PLO08 - Awareness of the requirement of lifelong learning, to follow developments in science and technology and continuous self-renewal ability
PLO09 - Ability to communicate effectively orally and in writing, and to read and understand technical publications in at least one foreign language
PLO10 - Professional and ethical responsibility,
PLO11 - Awareness about project management, workplace practices, employee health, environmental and occupational safety, and the legal implications of engineering applications,
PLO12 - Becomes aware of universal and social effects of engineering solutions and applications, entrepreneurship and innovation, and knowledge of contemporary issues


Week Plan

Week Topic Preparation Methods
1 Introduction to the concepts of "data structures" and "data models" by giving some examples Reading the lecture notes
2 Explanation of how to compute running time performance and memory requirements of algorithms with some sample program codes. Reading the lecture notes
3 Explanation of how to compute running time performance and memory requirements of algorithms with some sample program codes. Reading the lecture notes, homework assignment
4 Sorting algorithms and their analysis (insertion sort, selection sort, bubble sort algoritms and their comparisons) Reading the lecture notes
5 Sorting algorithms and their analysis (merge sort, heap sort, quick sort algorithms and their analysis, and also comparison of the all sorting algoritms that have learned) Reading the lecture notes, homework assignment
6 Sequential search and binary search algorithms; their analysis and applictaions. Reading the lecture notes, homework assignment
7 Hashing methods, their analysis and applications. Reading the lecture notes
8 Midterm exam Reading the lecture notes
9 Single and doubly linked lists and their applications Reading the lecture notes, homework assignment
10 Stack data structure and its applications Reading the lecture notes
11 Queue data structure and its applications Reading the lecture notes, homework assignment
12 Definition of the tree data model Reading the lecture notes
13 Binary trees, parse trees, heaps, coding trees and their applications Reading the lecture notes, homework assignment
14 Definition of the graph data model Reading the lecture notes
15 Applications of the graph data model Reading the lecture notes
16 Final exam Reading the lecture notes
17 Final exam Reading the lecture notes


Assessment (Exam) Methods and Criteria

Assessment Type Midterm / Year Impact End of Term / End of Year Impact
1. Midterm Exam 50 -10
1. Performance Task (Laboratory) 50 -10
1. Midterm Exam 50 -10
1. Performance Task (Laboratory) 50 -10
General Assessment
Midterm / Year Total 200 -20
1. Final Exam - 60
1. Final Exam - 60
Grand Total - 100


Student Workload - ECTS

Works Number Time (Hour) Workload (Hour)
Course Related Works
Class Time (Exam weeks are excluded) 14 3 42
Out of Class Study (Preliminary Work, Practice) 14 2 28
Assesment Related Works
Homeworks, Projects, Others 6 5 30
Mid-term Exams (Written, Oral, etc.) 1 15 15
Final Exam 1 20 20
Total Workload (Hour) 135
Total Workload / 25 (h) 5,40
ECTS 5 ECTS

Update Time: 15.03.2016 02:59