Showing the latest revision in section Curriculum 2022. The earlier version is in section Curriculum 2017.
Curriculum 2022
Prerequisite (if any) : Data Structures and Algorithms (prerequisite/corequisite), Systems Programming
Course Content
This is a companion lab of the Data Structures and Algorithms course. In this course, the students will learn to implement basic data structures in C/C++ and to use them for implementing some of the standard algorithms they learned in the theory course. A sample offering is given below.
Weeks 12: Iterative and recursive algorithms such as linear search, binary search, Towers of Hanoi and Euclidâ€™s GCD algorithm.
Weeks 34: Selection sort, insertion sort, quicksort, external merge sort.
Weeks 56: Linked lists  single and doubly linked lists, queue and stack using linked lists.
Weeks 79: Binary trees, binary search trees, expression trees and infixpostfix conversion.
Weeks 1011: Heaps and priority queues using min/max heaps. Graphs  representations and traversals.
Learning Outcomes

To be able to implement basic data structures and some of their standard applications.

To develop the ability to design and implement simple algorithms using the appropriate data structure learned in the course.
Curriculum 2017
This is a companion lab of the Data Structures and Algorithms course. In this course the students will learn to implement basic data structures and to use them for implementing some of the standard algorithmic applications they learned in the theory course.
Syllabus
Computations on arrays  binary search, bubble sort, insertion sort, quicksort, external merge sort, heaps and heapsort, priority queues using heaps.
Linked lists  single and doubly linked lists.
Queue and Stack data structures  array based and linked list based implementations. Infix to postfix conversion and expression evaluation.
Graphs  Adjacency matrix and adjacency list representations, DFS, BFS.
Binary Trees, Tree traversals, Binary search trees, BTrees.
Textbook(s)

Thomas H. Cormen, Charles E. Leiserson, Ronald L Rivest, Clifford Stein. Introduction to Algorithms, Third Edition, PHI Learning, 2009. ISBN:9788120340077.

Sanjoy DasGupta, C. H. Papadimitriou, Umesh Vazirani. Algorithms, First Edition, Tata McGraw Hill, 2006. ISBN: 9780073523408.
Sample offering :
Weeks 1 to 4: Computations on arrays  binary search, bubble sort, insertion sort, quicksort, external merge sort, heaps and heapsort, priority queues using heaps.
Weeks 5 to 8: Linked lists  single and doubly linked lists. Queue and Stack data structures  array based and linked list based implementations. Infix to postfix conversion and expression evaluation.
Weeks 9 to 12: Graphs  Adjacency matrix and adjacency list representations, DFS, BFS. Binary Trees, Tree traversals, Binary search trees. BTrees.
Metadata
Proposing Faculty: Department: Computer Science and Engineering Programme: B.Tech Proposing date: Approved date: Proposal type: Offerings: