Data Structure and Algorithms (CSC211) — Notes, Syllabus & Past Questions

Methods of organizing and storing data and analysis of algorithm efficiency.

Core Course8 Chapters
Chapter 19 Pages

Introduction to Data Structures & Algorithms

Data types, Data structure and Abstract date type; Dynamic memory allocation in C; Introduction to Algorithms; Asymptotic notations and common functions.

Read Notes
Chapter 214 Pages

Stack

Basic Concept of Stack, Stack as an ADT, Stack Operations, Stack Applications; Conversion from infix to postfix/prefix expression, Evaluation of postfix/ prefix expressions.

Read Notes
Chapter 312 Pages

Queue

Basic Concept of Queue, Queue as an ADT, Primitive Operations in Queue; Linear Queue, Circular Queue, Priority Queue, Queue Applications.

Read Notes
Chapter 48 Pages

Recursion

Principle of Recursion, Comparison between Recursion and Iteration, Tail Recursion; Factorial, Fibonacci Sequence, GCD, Tower of Hanoi(TOH); Applications and Efficiency of Recursion.

Read Notes
Chapter 523 Pages

Lists

Basic Concept, List and ADT, Array Implementation of Lists, Linked List, Types of Linked List: Singly Linked List, Doubly Linked List, Circular Linked List.

Read Notes
Chapter 613 Pages

Sorting

Introduction and Types of sorting: Internal and External sort, Comparison Sorting Algorithms: Bubble, Selection and Insertion Sort, Shell Sort, Divide and Conquer Sorting: Merge, Quick and Heap Sort.

Read Notes
Chapter 711 Pages

Searching and Hashing

Introduction to Searching, Search Algorithms: Sequential Search, Binary Search; Efficiency of Search Algorithms; Hashing: Hash Function and Hash Tables, Collision Resolution Techniques.

Read Notes
Chapter 827 Pages

Trees and Graphs

Concept and Definitions, Basic Operations in Binary Tree, Tree Height, Level and Depth, Binary Search Tree, Insertion, Deletion, Traversals, Search in BST.

Read Notes