COURSE INFORMATION
Course 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) NA
Main Course Lecturer (name, surname, academic title/scientific degree, email address and signature) and Office Hours: M.Sc. Taskyn Rakhym trakhym@epoka.edu.al , Wednesday, 14:00-16:00
Second Course Lecturer(s) (name, surname, academic title/scientific degree, email address and signature) and Office Hours: M.Sc. Ardita Dorti adorti@epoka.edu.al
Teaching Assistant(s) and Office Hours: NA
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: E-304
Code of Ethics: Code of Ethics of EPOKA University
Regulation of EPOKA University "On Student Discipline"
Attendance Requirement: 75% participation for Labratory and Lectures compulsory
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 able to implement frequently used Data structures with Pseudo codes. Moreover understand concept of advanced dynamic programming.
BASIC CONCEPTS OF THE COURSE
1 Application of Algorithms in Business
2 Sorting algorithms
3 Trees
4 Linked lists
5 Binary First Search
6 Comparing algorithms
7 Time and Memory Complexity of Algorithms
8 Stack
9 Queues
10 Srarching
COURSE OUTLINE
Week Topics
1 Introduction to Course and Review. In this lecture students will get introduced the course and understand difference between Data types and structures. Also will understand importance of Algorithms in Business
2 Fundamental Data Structures. Using Arrays. Using Linked Lists. In this lecture students will study about linked list and regular lists and their differences.
3 Linked Lists. Circularly Linked Lists. Doubly Linked Lists. Linked Lists. In this week students will detail study the Linked list and its application in IT and Business
4 Algorithm Analysis. Asymptotic Analysis. The “Big-Oh” Notation. In this week students will learn importance of Analysis of the algorithms and compare them by Big and Small O notations
5 Comparative Analysis. Memory complexity and time complexity. THis chapter extended continuation of previous chapter. Students will understand difference between memory and time complexity of the specific algorithm.
6 Recursion. Recursion is the technique of making a function call itself. Students will learn to implement Recursion to the developing algorithms.
7 Stacks, Queues Students will learn different list ordering structures such as queue and stacks and implement them during the coding.
8 First in First Out First in Last out this topics are extention of stack and queues.
9 Midterm In this week there will be written exam which covers from chapter 1-8
10 Sorting and Selection. In this week students will get introduces basic sorting algorithm and understand difference between Sorting and storing concepts
11 Merge Sort. Quick Sort. Comparing Sorting Algorithms in this week students will detail study the most frequently used sorting algorithms quick sort and merge sort.
12 Search trees, In this week students will get introduced main structure trees and their implementation.
13 Binary Search Trees. Balanced Search Trees. In this week students will study difference between Binary and Balanced search trees and their implementation.
14 Review. In this week students will review from 1-13 chapters
Prerequisite(s): None
Textbook(s): Introduction to Algorithms, Fourth Edition(2021) By Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest and Clifford Stein
Additional Literature:
Laboratory Work: 3
Computer Usage: Yes
Others: No
COURSE LEARNING OUTCOMES
1 At the end of the week students able to understand difference between data types and structures.
2 At the end of the week students able to implement arrays and linked lists.
3 At the end of the week students able to implement circularly and doubly linked lists
4 At the end of the week students able to understand Algorithmic analysis.
5 At the end of the week students able to conduct time and memory complexity analysis on algorithms
6 At the end of the week students able to implement recursions in the software development process.
7 At the end of the week students able to understand difference between stack and queues and their meaning. Moreover implement FIFO and FILO
8 At the end of the week students able to understand the sorting algorithms and implement the most famous of them Merge and Quick
9 At the end of the week students able to understand the Tree structure.
10 At the end of the week students able to implement binary and Balanced search trees.
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
30
Quiz
3
10
Final Exam
1
40
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 2 32
Hours for off-the-classroom study (Pre-study, practice) 30 2 60
Mid-terms 1 1 1
Assignments 3 3 9
Final examination 1 1 1
Other 11 2 22
Total Work Load:
125
Total Work Load/25(h):
5
ECTS Credit of the Course:
5
CONCLUDING REMARKS BY THE COURSE LECTURER

Students caught with plagiarism or receive a misbehavior report during lectures, labs, and exams will be automatically graded 0 points.