EGE UNIVERSITY FACULTY OF ENGINEERING COMPUTER ENGINEERING
DEPARTMENT 2017-2018 Fall Semester |
|
|
|
|
204
Data Structures (3+1) |
|||||||||||||||
Instructor |
Prof. Dr.
Aybars UĞUR (aybars.ugur@ege.edu.tr; aybars.ugur@gmail.com) (Office Hour: Thursday 15:45-16:30 about Data
Structures and Lecture) |
|||||||||||||||
Course
Place |
EGE University Computer Engineering Department B4 |
|||||||||||||||
Course
Time |
Tuesday, 13:15-16:00 |
|||||||||||||||
Assistants |
Office Hours are especially for C#, Java,
Eclipse, Project Questions and Program Errors. |
|||||||||||||||
Lab |
Session 1 : Thursday, 14:15-15:00 (Sinan Yılmaz Lab.) (Ege Lab.) Session 2 : Thursday, 15:15-16:00 (Sinan Yılmaz Lab.) (Ege Lab.) Session 3 : Thursday, 16:15-17:00 (Sinan Yılmaz Lab.) (Ege Lab.) |
|||||||||||||||
Aims and Objectives |
The objective of the course is to give detailed
information about Data Structures concepts and to give
ability to use suitable data
structures efficiently for solving problems. To introduce abstract concepts for data organization
and manipulation, to show how these
concepts are useful in problem solving and how the abstractions
can be made concrete by using a programming
language. |
|||||||||||||||
Learning
Outcomes |
1) To recognize the basic concepts, structures and commands in an object oriented and new programming language. To define the solutions in an object-oriented programming language. 2) To produce different, efficient and quick solutions to the problems. 3) Organizing data in computer programs for different forms and structures. Designing data structures efficiently in software development. Writing efficient algorithms by choosing suitable data structures. 4) To use data structures provided by the software development environments. 5) To write computer programs independently, to prepare projects and to present as project reports in written form. 6) To contribute the problem solutions in group studies. 7) To use data structures concepts in state-of-the-art problems. |
|||||||||||||||
Prerequisites |
Algorithms, Programming, Discrete Mathematics |
|||||||||||||||
Description |
Stack, Queues, Lists, Recursion, Trees (Binary Trees, Balanced Trees, Heaps, Huffman Encoding Tree), Comparison of Algorithms, Sorting and Search, Graphs
(Representation, Traversals,
Shortest Path, Minimum Spanning Tree, …) |
|||||||||||||||
Textbook |
Lafore, R., "Data
Structures & Algorithms in Java", 2nd Edition, SAMS Publishing,
2003, 776p. |
|||||||||||||||
Reference
Books |
In Turkish
In
English
|
|||||||||||||||
C# · Her Yönüyle C# 7.0, Volkan Aktaş, 1. Baskı, Kodlab, 2017. ·
C# 4.0
Herkes İçin, Herbert Schildt,
Alfa Yayınları, 2011. · Visual C# .NET 2.0, Nihat Demirli, Yüksel İnan, Palme Yayınevi, 2008. |
||||||||||||||||
Java
·
Java ile
Programlama ve Veri Yapıları, Bülent Çobanoğlu, Pusula Yayıncılık, 2008. · Java ve Yazılım Tasarımı (Altuğ B. Altıntaş): http://www.kodcu.com/e-kitap/ · Thinking in Java, 3rd Edition (Bruce Eckel) · Other Related Books: http://www.mindviewinc.com/Books |
||||||||||||||||
GRADING |
Activities (Mid-term): Projects
1-4 (+ Research), Report Preparation,
Quiz, Attendance |