Data structure is a subject of primary importance in Computer Science and Engineering. Organizing or structuring data is important for implementation of efficient algorithms and program development. Efficient problem solving needs the application of appropriate data structure during program development
After learning the course the students should be able:
1. Differentiate primitive and non primitive structures
2. Design and apply appropriate data structures for solving computing problems.
3. Apply sorting and searching algorithms to the small and large data sets.
Content:
1. INTRODUCTION TO DATA STRUCTURE:
Data Management concepts, Data types – primitive and non-primitive, Performance Analysis and Measurement (Time and space analysis of algorithms-Average, best and worst case analysis), Types of Data Structures- Linear & Non Linear Data Structures.
2. LINEAR DATA STRUCTURE
Array: Representation of arrays, Applications of arrays, sparse matrix and its representation Stack: Stack-Definitions & Concepts, Operations On Stacks, Applications of Stacks, Polish Expression, Reverse Polish Expression And Their Compilation, Recursion, Tower of Hanoi Queue: Representation Of Queue, Operations On Queue, Circular Queue, Priority Queue, Array representation of Priority Queue, Double Ended Queue, Applications of Queue Linked List: Singly Linked List, Doubly Linked list, 13 30 Circular linked list ,Linked implementation of Stack, Linked implementation of Queue, Applications of linked list.
3. NONLINEAR DATA STRUCTURE :
Tree-Definitions and Concepts, Representation of binary tree, Binary tree traversal (Inorder, postorder, preorder), Threaded binary tree, Binary search trees, Conversion of General Trees To Binary Trees, Applications Of TreesSome balanced tree mechanism, eg. AVL trees, 2-3 trees, Height Balanced, Weight Balance, Graph-Matrix Representation Of Graphs, Elementary Graph operations,(Breadth First Search, Depth First Search, Spanning Trees, Shortest path, Minimal spanning tree )
4. HASHING AND FILE STRUCTURES :
Hashing: The symbol table, Hashing Functions, CollisionResolution Techniques, File Structure: Concepts of fields, records and files, Sequential, Indexed and Relative/Random File Organization, Indexing structure for index files, hashing for direct files, Multi-Key file organization and access methods.
5. Sorting & Searching:
Sorting – Bubble Sort, Selection Sort, Quick Sort, Merge Sort Searching – Sequential Search and Binary Search