L 3 C 3
Teachers Continuous Evaluation: as per university examination norms. End Term Theory Examination: as per university examination norms.
Course outcomes
- Understand data structures, algorithm analysis, searching, and sorting techniques. [K2]
- Apply linear data structures such as arrays, linked lists, stacks, and queues in solving computational problems. [K3]
- Evaluate tree-based data structures and balancing techniques for efficient storage, searching, and sorting. [K5]
- Analyze graph traversal methods, disjoint data structures, and hashing techniques for efficient problem solving. [K4]
Unit I (9 lectures)
Introduction to Data Structures: Overview of Data Structures, Data types – primitive and non-primitive, Basics of Algorithms Analysis, Performance Analysis and Measurement (Time and space analysis of algorithms-Average, best and worst case analysis), Asymptotic Notations, Types of Data Structures- Linear & Non Linear Data Structures, Concept of Abstract Data Types. Sorting – Bubble Sort, Insertion Sort, Selection Sort, Quick Sort, Merge Sort, Sequential (Linear) Search and Binary Search
Unit II (8 lectures)
Linear Data Structures: Array: Representation of arrays, Applications of arrays: sparse matrix and its representation, polynomials and polynomials arithmetics; Linked List: Singly Linked List, Doubly Linked list, Circular linked list; Applications of linked list: Stack-Definitions & Concepts, Operations On Stacks, Linked List vs Array implementation of Stack; Applications of Stacks: Prefix, Infix and Postfix Expressions; Queue: Representation Of Queue, Operations On Queue, Linked List vs Array implementation of Queue, Circular Queue, Priority Queue.