EPOKA UNIVERSITY
FACULTY OF ECONOMICS AND ADMINISTRATIVE SCIENCES
DEPARTMENT OF BUSINESS ADMINISTRATION
COURSE SYLLABUS
2024-2025 ACADEMIC YEAR
COURSE INFORMATIONCourse Title: DATA STRUCTURES |
| Code | Course Type | Regular Semester | Theory | Practice | Lab | Credits | ECTS |
|---|---|---|---|---|---|---|---|
| CEN 254 | B | 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) | Dr. Aida Dhima abitri@epoka.edu.al |
| Main Course Lecturer (name, surname, academic title/scientific degree, email address and signature) and Office Hours: | M.Sc. Jurgen Cama jcama@epoka.edu.al |
| Second Course Lecturer(s) (name, surname, academic title/scientific degree, email address and signature) and Office Hours: | M.Sc. Erdjana Dida edida@epoka.edu.al |
| Language: | English |
| Compulsory/Elective: | Compulsory |
| Study program: (the study for which this course is offered) | Bachelor in Business Informatics (3 years) |
| Classroom and Meeting Time: | Theory: Wednesdays Lab: Thursdays |
| Teaching Assistant(s) and Office Hours: | NA |
| Code of Ethics: |
Code of Ethics of EPOKA University Regulation of EPOKA University "On Student Discipline" |
| Attendance Requirement: | 75% |
| 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: | At the end of the course, students should understand and be able to implement frequently used Data structures with JAVA. |
|
BASIC CONCEPTS OF THE COURSE
|
| 1 | Linked Lists |
| 2 | Stacks and Queues |
| 3 | Trees, Binary Search Trees |
| 4 | AVL Trees |
| 5 | Graphs |
| 6 | HashMaps |
|
COURSE OUTLINE
|
| Week | Topics |
| 1 | Intro. to Course and Asymptotic Notations |
| 2 | Recursion |
| 3 | Linked Lists |
| 4 | Stacks and Queues |
| 5 | Trees, Binary Trees, Binary Search Trees |
| 6 | Binary Search Trees II |
| 7 | AVL Trees |
| 8 | MIDTERM EXAM |
| 9 | Mapping, Hashing |
| 10 | Sorting I: Selection, Insertion and Merge Sort |
| 11 | Sorting II: Merge Sort, Quick Sort and Heap Sort |
| 12 | Graph Data Structure I |
| 13 | Prim`s Algorithm, Kruskal`s Algorithm, Dijkstra Algorithm |
| 14 | Review |
| Prerequisite(s): | To have a satisfactory level in a object oriented programming language. |
| Textbook(s): | Data Structures and Algorithms in Java, 6th Edition, 2014 |
| Additional Literature: | - |
| Laboratory Work: | YES |
| Computer Usage: | Yes |
| Others: | No |
|
COURSE LEARNING OUTCOMES
|
| 1 | Students should be able to understand the difference between data structures. |
| 2 | Students should be able to implement different data structures. |
| 3 | Students should be able to implement algorithms to manipulate data. |
|
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 |
| Homework |
1
|
20
|
| Midterm Exam(s) |
1
|
35
|
| 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 | 5 | 5 |
| Assignments | 0 | 0 | 0 |
| Final examination | 1 | 5 | 5 |
| Other | 1 | 19 | 19 |
|
Total Work Load:
|
125 | ||
|
Total Work Load/25(h):
|
5 | ||
|
ECTS Credit of the Course:
|
5 | ||
|
CONCLUDING REMARKS BY THE COURSE LECTURER
|
|
What students learn on this subject is the part that understanding concepts is more important than memorizing code. Even though they should invest themselves in developing problem-solving skills and thinking algorithmically, they should not forget the syntax of the language that they are using, which is equally important, because without it, they cannot develop working apps. |