You are on page 1of 2

Wachemo University

College of Engineering and Technology


School of Computing and Informatics
Department of Computer Science
Data structure and
Course Title: Prerequisite: Fundamentals of programming II
algorithms
Course Code: CoSc2083 Year/Semester: IV/I
Module Code: CoSc2083 Acc. Year: 2021/22 (2014 E.C)
Course ECTS: 6 Instructor: Sara M.(MSc.)
Target Group: Computer Science Contact: Sara.mesfin11619805@gmail.com

Course Description: This course focuses on the study of data structures, algorithms and
program efficiency. Topics include: analysis of time and space requirements of algorithms;
program efficiency improving techniques, abstract data types such as linked lists, stacks, queues,
trees (traversal, implementations); simple searching algorithms (linear search, binary search,
… ), simple sorting algorithms (bubble sort, insertion sort, selection sort, … ), advanced sorting
algorithms (merge sort, quick sort, heap sort … ) Course Goals or Learning Outcome: The
course aims: To introduce the most common data structures like stack, queue, linked list To give
alternate methods of data organization and representation To enable students use the concepts
related to Data Structures and Algorithms to solve real world problems To practice Recursion,
Sorting, and searching on the different data structures To implement the data structures with a
chosen programming language.

CHAPTER 1: introduction to data CHAPTER 3: Simple Sorting and Searching


Algorithms Recursive Functions
structures  Sorting
 introduction Abstract Data Type  Selection Sort
 Bubble Sort
and Abstraction  Insertion Sort
 Searching Linear/Sequential
 Searching Binary Searching
CHAPTER 2: Algorithm and Algorithm Analysis CHAPTER 4: Linked Lists
Review on Pointer, Dynamic Memory allocation and
 Properties of Algorithm
De-allocation Singly Linked Lists Doubly Linked
 Analysis of Algorithm Lists Implementation of Linked Lists

CHAPTER 5: Stacks and Queues CHAPTER 6: Tree Structures


 Binary Trees and Binary Search Trees
 Basic Stack Operations
 Basic Tree Operations
 Basic Queue Operations Implementation  Traversing in a Binary Tree
of Stacks and queues
 General Trees and Their Implementations
CHAPTER 7: Graphs CHAPTER 8: Advanced Sorting and Searching
 Sorting
 introduction
 Heap Sort
 Describing graphs  Quick Sort
 Merge Sort
 Directed Graphs
 Shell Sort
 Traversing a graph  Advanced Searching
 Hashing

You might also like