Course: Data Structures & Algorithms

Department: Department of Software Engineering

University: Lahore Garrison University, Lahore

Class, Section & Semester : [BSSE-3rd (A, B, C, D) Fall-2019], [BSSE-3rd (B,D) Fall-2020]

Course Code: 

Credit Hours: 4(3+1)


  • Object Oriented Programming

Recommended Text Book:

  • Data Structures and Algorithms in C++ by Adam Drozdek
  • Data Structures and Algorithm Analysis in Java by Mark A. Weiss
  • Data Structures and Abstractions with Java by Frank M. Carrano & Timothy M. Henry
  • Data Structures and Algorithm Analysis in C++ by Mark Allen Weiss
  • Java Software Structures: Designing and Using Data Structures by John Lewis and Joseph Chase

Reference Books/Material: 

  1. Handouts

Marks Distribution: Mid Term – 20% | Final Term – 40% | Sessionals (Quizzes, Assignments, Attendance and Class Participation) – 15% | Semester Research Project – 25% |  Total – 100%

Topics Covered (32 Lectures Plan)
Lect.# Lecture Topics A/Q/P
01 Introduction to Course & Grading Policy Lecture-1
02 DSA Fundamentals, ADTs, Complexity Analysis and Big O Notation Lecture-2
03 List Abstract Data Structures with Array based and Linked List based Implementation Lecture-3
04 Linked List with Dynamic Implementation Lecture-4
05 Introduction to Double Link List Lecture-5
06 Double Link List Implementation Lecture-6
07 Introduction to Circular Link List Lecture-7
08 Circular Link List Implementation Lecture-8
09 Introduction to Stack Lecture-9
10 Stack Implementation Lecture-10
11 Introduction to Queues Lecture-11
12 Queues Implementation Lecture-12
13 Recursion and Analyzing Recursive Algorithms Lecture-13
14 Introduction to Sorting and Selection Sort with Implementation Lecture-14
15 Insertion Sort and Merge Sort with Implementation Lecture-15
16 Quick Sort and Bucket Sort with Implementation Lecture-16
17 Sequential Search and Binary Search Lecture-17
18 Revision and Summary Lecture-18
19 Hashing Lecture-19
20 Open Addressing and Chaining Lecture-20
21 Introduction to Trees and Tree Traversals Lecture-21
22 Binary Trees with Implementation Lecture-22
23 Binary Search Trees Lecture-23
24 Balanced Trees and AVL Trees Lecture-24
25 Heaps Lecture-25
26 Introduction to Graphs and Shortest Path Problems Lecture-26
27 Breadth first and Depth first Search/Traversals Lecture-27
28 Shortest Path and Topological Orders Lecture-28
29 Adjacency Matrix and Adjacency List Implementation Lecture-29
30 Eulerian and Hamiltonian Graphs Lecture-30
31 Data Compression and Huffman Coding Lecture-31
32 Revision and Summary Lecture-32

Rest the lecture resources will be provided to concerned CR/GR.

I pray that Allah give you the strength and wisdom to learn.