B.E. III Sem Information Technology

III SEMESTER

3IT3. Data Structures & Algorithms

 

I Data Structure: Definition, Implementation, Operation, Application, Algorithm writing and convention. Analysis of algorithm, Complexity Measures and Notations. Arrays: Representation of arrays (multidimensional), Address calculation using column and row major ordering. Linked Lists : Implementation, Doubly linked list, Circular linked list, unrolled linked list, skip-lists, Splices, Sentinel nodes, Application (Sparse Matrix, Associative Array, Functional Programming)


II Stacks : Definition, Implementation, Application (Tower of Hanoi, Function Call and return, Parentheses Matching, Back-tracking, Expression Evaluation)
Queues : Definition, deque, enque, priority queue, bounded queue, Implementation, Application


III Tree: Definition of elements, Binary trees: Types (Full, Complete, Almost complete), Binary Search Tree, Traversal (Pre, In, Post & Level order), Pruning, Grafting. Application: Arithmetic Expressions Evaluation Variations: Indexed Binary Tree, Threaded Binary Tree, AVL tree, Multi-way trees, B tree, B+ tree, Forest, Trie and Dictionary


IV Graphs: Elementary definition, Representation (Adjacency Matrix, Adjacency Lists) Traversal (BFS, DFS Application : Spanning Tree (Prim and Kruskal Algorithm), Dijkstra's algorithm, Shortest path algorithms.


V Sorting : Bubble, Selection, Insertion, Quick, Radix, Merge, Bucket, Heap, Searching : Hashing, Symbol Table, Binary Search, Simple String Searching