This document outlines a 12-week training program covering fundamental data structures and algorithms topics including recursion, sorting, searching, hashing, strings, arrays, stacks, queues, linked lists, trees, tries, priority queues, greedy algorithms, dynamic programming, and graph theory. Key concepts and algorithms to be covered include binary search, two pointers technique, tree traversals, binary search trees, trie prefix matching, heapsort, Dijkstra's algorithm, Kruskal's algorithm, and topological sorting. Weekly sessions include lectures, problem solving practice, and coding exercises.
This document outlines a 12-week training program covering fundamental data structures and algorithms topics including recursion, sorting, searching, hashing, strings, arrays, stacks, queues, linked lists, trees, tries, priority queues, greedy algorithms, dynamic programming, and graph theory. Key concepts and algorithms to be covered include binary search, two pointers technique, tree traversals, binary search trees, trie prefix matching, heapsort, Dijkstra's algorithm, Kruskal's algorithm, and topological sorting. Weekly sessions include lectures, problem solving practice, and coding exercises.
This document outlines a 12-week training program covering fundamental data structures and algorithms topics including recursion, sorting, searching, hashing, strings, arrays, stacks, queues, linked lists, trees, tries, priority queues, greedy algorithms, dynamic programming, and graph theory. Key concepts and algorithms to be covered include binary search, two pointers technique, tree traversals, binary search trees, trie prefix matching, heapsort, Dijkstra's algorithm, Kruskal's algorithm, and topological sorting. Weekly sessions include lectures, problem solving practice, and coding exercises.
This document outlines a 12-week training program covering fundamental data structures and algorithms topics including recursion, sorting, searching, hashing, strings, arrays, stacks, queues, linked lists, trees, tries, priority queues, greedy algorithms, dynamic programming, and graph theory. Key concepts and algorithms to be covered include binary search, two pointers technique, tree traversals, binary search trees, trie prefix matching, heapsort, Dijkstra's algorithm, Kruskal's algorithm, and topological sorting. Weekly sessions include lectures, problem solving practice, and coding exercises.
Download as DOCX, PDF, TXT or read online from Scribd
Download as docx, pdf, or txt
You are on page 1of 1
SMART INTERVIEWS - PROBLEM SOLVING - DATA o Meet in the Middle
STRUCTURES & ALGORITHMS Week-7
Stacks and Queues Week-1 o Multiple stacks in an array Basics of programming o Implement queue using stacks Data types & operators o Area under Histogram o Size/range of data types Basics of Linked-Lists o Importance of Constraints o Insert/Search/Delete/Reverse o Bit Manipulations Lab Session Complexity Analysis of Algorithms o Internal Contest-2 o Big-O Notation Week-8 o Time & Space Advanced problems on Linked-List Week-2 o Intersection point Recursion o Cycle Detection o Steps to implement recursion o Cloning a Linked-List o Recurrence Relations Basics of Trees Sorting Techniques & Applications o Tree Traversals o Standard sorting algorithms o Height and Depth o Applications of Count Sort o Binary Search Trees o Two pointer technique Week-9 o Inversion Count Advanced problems on Trees Week-3 o Inorder-Preorder to Postorder Searching Techniques o K-distance o Linear Search Trie DS and Applications o Binary Search o Dictionary & Prefix Matching Applications of Binary Search Priority Queues o Lower Bound & Upper Bound o Min/Max Heap - CBT o Finding Frequency o Median of sub arrays o Optimization problems Week-10 o Root of a number Greedy Programming Week-4 o Greedy Choice Property Hashing o Fractional Knapsack o Why hashing? o Activity Selection o Hashing Techniques Basics of Dynamic Programming o Collision Resolutions o Memoization vs Tabulation o Inbuilt Libraries o Applications of Fibonacci Series Lab Session Week-11 o Usage of inbuilt libraries 1-D Dynamic Programming o Internal Contest-1 o Maximum Sub array Sum Week-5 o Longest Increasing Subsequence Strings 2-D Dynamic Programming o ASCII representation o Integer Knapsack & nCr o String Matching Algorithms o Matrix Multiplication o Binary Search+Rolling Hash o Sub matrix Sum Arrays Week-12 o Sub arrays Basics of Graph Theory o Subsets vs Subsequences o Representation and Traversals o Sliding Window o Cycle Detection Week-6 Important Graph Algorithms Mixed-bag problem-solving o Dijkstra's Algorithm o Arrays & matrices o Kruskal's Algorithm - MST o Searching/Sorting/Hashing o Topological Sorting o Prefix-sum o Bipartite Graphs Miscellaneous Concepts o Prime Numbers o Game Theory