Third Semester
Data Structure and Algorithm
Course Description: This course includes the basic foundations in of data structures and algorithms. This course covers concepts of various data structures like stack, queue, list, tree and graph. Additionally, the course includes idea of sorting and searching.
Course Objectives: To introduce data abstraction and data representation in memory To describe, design and use of elementary data structures such as stack, queue, linked list, tree and graph. To discuss decomposition of complex programming problems into manageable sub- problems To introduce algorithms and their complexity.
Contents of Chapter |
|---|
Unit 1. Introduction to Data Structures Algorithm (4hrs)
1.1 Data types, Data structure and Abstract date type |
nit 2. Stacks (4 hrs.)
2.1 Basic Concept of Stack, Stack as an ADT, Stack Operations, Stack Applications |
Unit 3. Queue (4 hrs.)
3.1 Basic Concept of Queue, Queue as an ADT, Primitive Operations in Queue |
Unit 4. Recursion (3 hrs.)
4.1 Principle of Recursion, Comparison between Recursion and Iteration, Tail Recursion |
Unit 5. Lists (8 hrs.)
5.1 Basic Concept, List and ADT, Array Implementation of Lists, Linked List |
Unit 6. Sorting (8 hrs.)
6.1 Introduction and Types of sorting: Internal and External sort |
Unit 7: Searching and Hashing (7 hrs.)
7.1 Introduction to Searching, Search Algorithms: Sequential Search, Binary Search |
Unit 8: Trees and Graphs (8 hrs.)
8.1 Concept and Definitions, Basic Operations in Binary Tree, Tree Height, Level and Depth |