Data Structures Lab
Code: MA619/MA6006 | L-T-P-C: 0-2-2-6
MA619 Data Structures Lab L-T-P-C [0-2-2-6]
Assignments are designed to provide hands-on experience in programming the following data structures and algorithms using the C programming language. Elementary data structures: arrays, matrices, linked lists, stacks, queues, binary trees, tree traversals; Balanced binary search trees: red-black trees, B-trees; Priority queues: binary heap; Sorting and searching: bubble, insertion, merge, quick sort, heap sort, binary search; Hashing; Strings: tries, suffix arrays, suffix trees; Sets: linked-list, disjoint-set forest; Graphs: adjacency list, adjacency matrix, depth first search, breadth first search.
Texts:
- M.A. Weiss, Data Structures and Algorithm Analysis in C, Pearson, 2002.
- T.H. Cormen, C.E. Leiserson, R.L. Rivest and C. Stein, Introduction to Algorithms, MIT Press, 2009.
References:
- E. Horowitz and S. Sahni, Fundamentals of Data Structures in C, University Press, 2008.
- R. Sedgewick, Algorithms in C Parts 1-4: Fundamentals, Data Structures, Sorting, Searching, Pearson, 1997.
- R. Sedgewick, Algorithms in C Part 5: Graph Algorithms, Pearson, 2001.
- M.T. Goodrich, and R. Tamassia, Data Structures and Algorithms in C++, Wiley India, 2007.
- B.W. Kernighan and D.M. Ritchie, The C Programming Language, Prentice Hall India, 1990.