High Performance Coding - Advanced Data Structures and Algorithms Using Java
High Performance Coding - Advanced Data Structures and Algorithms Using Java
Module I:
Array Problem Solving, Singly Linked List and its operations, Singly Linked List Applications, Doubly
Linked List and its operations, Doubly Linked List Applications, Circular Linked List and its operations,
Circular Linked List Applications, Stack implementation through array, Stack implementation through
linked list, Expression Evaluation and conversion of expression using stack, Balanced Parenthesis
using Stack, Queue using array, Queue using linked list, Circular Queue and Deque
Implementation, Queue application practice problems
Module II:
Binary search tree creaDon and its operaDon, Tree Traversals, AVL tree, Red black tree
implementaDon, Tree applicaDon pracDce problem, Graph representaDon using adjacency list, Graph
representaDon using adjacency matrix, Breadth First Search, Depth First Search, Minimum Spanning
Tree - Prim's Algorithm, Minimum Spanning Tree - Kruskal's Algorithm, Minimum Spanning Tree -
Floyd-Warshall Algorithm, Graph applicaDon pracDce problems, Trie creaDon and its operaDons, Trie
applicaDon pracDce problem, Recursion and pracDce problems
Module III:
Linear Search and Binary Search with pracDce problems, Bubble sort, SelecDon Sort with pracDce
problems, InserDon Sort, Merge Sort with pracDce problems, Quick Sort with pracDce
problems, Dynamic Programming - Longest Common Subsequence, Dynamic Programming - Longest
Increasing Subsequence, Dynamic Programming -Levenshtein distance, Dynamic Programming -
PracDce Problems, Greedy Algorithm - Minimum Coin Exchange Problem, Greedy Algorithm -
Knapsack and FracDonal Knapsack problem, String Matching Algorithm - Naive, KMP algorithm, String
Matching Algorithm - Manacher's algorithm, Z algorithm, Backtracking - PracDce Problems, Bit
ManipulaDon - PracDce Problems