EPOKA UNIVERSITY
FACULTY OF ARCHITECTURE AND ENGINEERING
DEPARTMENT OF COMPUTER ENGINEERING
COURSE SYLLABUS
COURSE INFORMATIONCourse Title: DATA STRUCTURES |
Code | Course Type | Regular Semester | Theory | Practice | Lab | Credits | ECTS |
---|---|---|---|---|---|---|---|
CEN 254 | A | 4 | 3 | 0 | 2 | 4 | 5 |
Academic staff member responsible for the design of the course syllabus (name, surname, academic title/scientific degree, email address and signature) | NA |
Lecturer (name, surname, academic title/scientific degree, email address and signature) and Office Hours: | Florenc Skuka , 10:00 - 12:00 |
Second Lecturer(s) (name, surname, academic title/scientific degree, email address and signature) and Office Hours: | NA |
Teaching Assistant(s) and Office Hours: | NA |
Language: | English |
Compulsory/Elective: | Compulsory |
Classroom and Meeting Time: | E214 |
Course Description: | Study of the basic data structures and their implementations: Arrays, matrices, stacks, queues, hash tables, trees, lists, and graphs. Programming techniques using recursion. Various searching and sorting methods such as insertion sort, merge sort, and quick sort. Basic analysis of algorithms. |
Course Objectives: | To get accustomed to and be able to use common algorithms used in programming. External memory algorithms and data structures for sorting and searching, advanced algorithms for graphs. |
COURSE OUTLINE
|
Week | Topics |
1 | Intro. to Course and Review |
2 | Abstract data types, Asymptotic Notations |
3 | Using Linked Lists |
4 | Stacks and Queues |
5 | Stacks and Queues |
6 | Trees, Binary Trees, Perfect and Complete binary trees |
7 | Binary Search Trees and AVL trees |
8 | MIDTERM EXAM |
9 | Tree Traversals, Red Black Trees |
10 | Sorting: Merge Sort, Heap Sort |
11 | Sorting: Quick Sort, Bucket Sort |
12 | Mapping, Hashing |
13 | Graph Data Structure |
14 | Prim`s Algorithm, Kruskal`s Algorithm |
Prerequisite(s): | To have a satisfactory level in a programming language. CEN 114 |
Textbook: | Data Structures and Algorithms in Java, 6th Edition, 2014 |
Other References: | Pearson_ - Algorithms_ 4th ed. - _Sedgewick_ Wayne |
Laboratory Work: | Computer Software (Eclipse ,Netbeans IDE) lab. |
Computer Usage: | Yes |
Others: | No |
COURSE LEARNING OUTCOMES
|
1 | Become accustomed to the description of algorithms in both functional and procedural styles; |
2 | Learn good principles of algorithm design: Data abstraction ability |
3 | Learn how to analyze algorithms and estimate their worst-case and average case behavior (in easy cases) |
4 | Become familiar with fundamental data structures |
5 | Engineering graduates with sufficient theoretical and practical background for a successful profession and with application skills of fundamental scientific knowledge in the engineering practice. |
6 | Engineering graduates with the necessary technical, academic and practical knowledge and application confidence in the design and assessment of machines or mechanical systems or industrial processes with considerations of productivity, feasibility and environmental and social aspects. |
7 | Ability of designing and conducting experiments, conduction data acquisition and analysis and making conclusions |
8 | The abilities and performance to participate multi-disciplinary groups together with the effective oral and official communication skills and personal confidence |
9 | Ability for effective oral and official communication skills in foreign language |
10 | Consciousness for the results and effects of engineering solutions on the society and universe, awareness for the developmental considerations with contemporary problems of humanity |
COURSE CONTRIBUTION TO... PROGRAM COMPETENCIES
(Blank : no contribution, 1: least contribution ... 5: highest contribution) |
No | Program Competencies | Cont. |
Bachelor in Business Informatics (3 years) Program | ||
1 | Identify activities, tasks, and skills in management, marketing, accounting, finance, and economics. | 5 |
2 | Apply key theories to practical problems within the global business context. | 5 |
3 | Demonstrate ethical, social, and legal responsibilities in organizations. | 5 |
4 | Develop an open minded-attitude through continuous learning and team-work. | 5 |
5 | Integrate different skills and approaches to be used in decision making and data management. | 5 |
6 | Combine computer skills with managerial skills, in the analysis of large amounts of data. | 5 |
7 | Provide solutions to complex information technology problems. | 5 |
8 | Recognize, analyze, and suggest various types of information-communication systems/services that are encountered in everyday life and in the business world. | 5 |
COURSE EVALUATION METHOD
|
Method | Quantity | Percentage |
Midterm Exam(s) |
1
|
35
|
Quiz |
1
|
5
|
Laboratory |
1
|
15
|
Final Exam |
1
|
45
|
Total Percent: | 100% |
ECTS (ALLOCATED BASED ON STUDENT WORKLOAD)
|
Activities | Quantity | Duration(Hours) | Total Workload(Hours) |
Course Duration (Including the exam week: 16x Total course hours) | 16 | 5 | 80 |
Hours for off-the-classroom study (Pre-study, practice) | 16 | 1 | 16 |
Mid-terms | 1 | 10 | 10 |
Assignments | 4 | 1 | 4 |
Final examination | 1 | 15 | 15 |
Other | 0 | ||
Total Work Load:
|
125 | ||
Total Work Load/25(h):
|
5 | ||
ECTS Credit of the Course:
|
5 |