Course Outcomes: After successful completion of the course the students are able to
CO1: Implement balanced binary trees, heaps and graph traversals using arrays and linked list.(Apply-L3)
CO2: Implement Various Sorting Techniques. (Apply -L3)
CO3: Implement optimization problems using greedy, dynamic programming, back tracking and branch-and-bound techniques. (Apply - L3)
CO4: Improve individual/team work skills, communication & report writing skills with ethical values.
AVL Trees:
An AVL tree is a self-balancing binary search tree that was created by Adelson-Velsky and Landis, hence the name AVL. It is a height balanced tree that keeps the difference between the height of the left and right subtrees in the range [-1, 0, 1]. This difference is called balanced factor and tree is said to be unbalanced when this balance factor is outside the specified range. Unbalanced tree is balanced through specific rotation operations during insertions and deletions.
B-Trees:
The B-tree is a self-balancing ordered structured data that stores data in a set of pages and also allows efficient searching, insertion, and deletion operations. It has its origin in a generic form of binary search trees developed by Rudolf Bayer and Edward M. McCreight in 1972. It is capable of processing large datasets efficiently. Among database systems and file systems, B-trees are quite often employed. This is so because they have a well-balanced structure, which allows for high speed performance, and they can handle a great number of elements.
Heap Trees:
Heap sort is a comparison-based sorting technique. It works on the data structure known as "the binary heap". It is one of the most efficient sorting algorithms. It takes relatively less time than selection sort, bubble sort, and insertion sort. Heap sort is an unstable sorting algorithm since the position of a similar element gets changed. Heap sort works with Max Heap (Heap is a complete binary tree. A max heap has a parent node greater than the child nodes).
"Understanding time and space complexity is not optional — it’s the very lens through which software scales."
— Jon Bentley