This module will help the student to learn the logical model of a particular organization of data effectively.
Principles of Object -Oriented Programming, Defining & Using Classes, Controlling Access to Class Members, Class Constructors, Method Overloading, Class Variables & Methods, Objects as parameters, final classes, Object class, Garbage Collection. Single and Multi-dimensional Arrays, Sparse Matrices (Array and Linked Representation).
Linked list: Creation, insertion and deletion of nodes from a list ,array implementation of lists through JAVA, Allocating and freeing dynamic memory, comparing dynamic and array implementation of lists. Doubly Linked lists, Circular linked lists, Circular Double linked lists.
JAVA implementation: Singly & circular linked lists, Self Organizing Lists; Skip Lists
Stack: Definition, Primitive operations, representing stack in JAVA, implementing the push and pop operation, testing exceptional conditions, infix, postfix and prefix expression (definition and examples),infix to postfix, evaluation of postfix expression (Algorithm and JAVA implementation). Linked implementation of stacks.
Queues: Introduction, Definition of Queue and its sequential representation, JAVA implementation of queues, insert and remove operation, Priority queues. Linked implementation of queues, linked implementation of priority queue. Sorting: Exchange Sorts (Bubble sort, Quick sort), Straight Selection sort, and Insertion sorts, Shell Sort, Comparison of Sorting Techniques
Trees :Binary Trees (Insertion, Deletion , Recursive and Iterative Traversals on Binary Search Trees); Threaded Binary Trees (Insertion, Deletion, Traversals) Height -Balanced Trees (Various operations on AVL Trees) Graphs : Graph Algorithms – Breadth First Search, Depth First Search and its Applications, Minimum Spanning Tree.
3. T.H. Cormen, Charles E. Leiserson, Ronald L. Rivest , Clifford Stein Introduction to Algorithms, PHI,
3rd Edition 2009
1. E. Horowitz and S. Sahani, “Fundamentals of Data Structures”, Galgotia Book source Pvt. Ltd, 2000
2. Mark Allen Weiss, “Data Structures and Algorithms Analysis in Java", Pearson Education, 3rd edition,
2011
3. D. S. Malik, P.S. Nair, "Data Structures Using Java", Course Technology, 2003