Author(s): Goal Kickers Team (GoalKickers.com)
Publisher: Goal Kickers Team (GoalKickers.com)
Year: 0
Language: English
Pages: 257
Content list......Page 2
About......Page 6
Section 1.2: Getting Started with Simple Fizz Buzz Algorithm in Swift......Page 7
Section 2.1: Big-Theta notation......Page 10
Section 2.3: Big-Omega Notation......Page 11
Chapter 3: Big-O Notation......Page 13
Section 3.2: A Nested Loop......Page 14
Section 3.3: O(log n) types of Algorithms......Page 15
Section 3.4: An O(log n) example......Page 17
Section 4.2: Introduction......Page 19
Section 4.3: To check if two Binary trees are same or not......Page 20
Section 5.1: Binary Search Tree - Insertion (Python)......Page 23
Section 5.2: Binary Search Tree - Deletion(C++)......Page 25
Section 5.3: Lowest common ancestor in a BST......Page 26
Section 5.4: Binary Search Tree - Python......Page 27
Section 6.1: Algorithm to check if a given binary tree is BST......Page 29
Section 6.2: If a given input tree follows Binary search tree property or not......Page 30
Section 7.1: Level Order traversal - Implementation......Page 31
Section 7.2: Pre-order, Inorder and Post Order traversal of a Binary Tree......Page 32
Section 8.1: Finding lowest common ancestor......Page 34
Section 9.1: Storing Graphs (Adjacency Matrix)......Page 35
Section 9.2: Introduction To Graph Theory......Page 38
Section 9.3: Storing Graphs (Adjacency List)......Page 42
Section 9.4: Topological Sort......Page 44
Section 9.5: Detecting a cycle in a directed graph using Depth First Traversal......Page 45
Section 9.6: Thorup's algorithm......Page 46
Section 10.1: Depth First Search traversal function......Page 48
Section 11.1: Dijkstra's Shortest Path Algorithm......Page 49
Section 12.2: A* Pathfinding through a maze with no obstacles......Page 54
Section 12.3: Solving 8-puzzle problem using A* algorithm......Page 61
Section 13.1: Simple Example of A* Pathfinding: A maze with no obstacles......Page 64
Section 14.2: Weighted Job Scheduling Algorithm......Page 71
Section 14.3: Longest Common Subsequence......Page 75
Section 14.4: Fibonacci Number......Page 76
Section 14.5: Longest Common Substring......Page 77
Section 15.1: Fibonacci Numbers......Page 78
Section 16.1: Optimal, disjoint-set based implementation......Page 81
Section 16.4: Simple, high level implementation......Page 82
Section 17.1: Human Coding......Page 84
Section 17.2: Activity Selection Problem......Page 87
Section 17.3: Change-making problem......Page 89
Section 18.1: Oine Caching......Page 91
Section 18.2: Ticket automat......Page 99
Section 18.3: Interval Scheduling......Page 102
Section 18.4: Minimizing Lateness......Page 106
Section 19.1: Introduction To Prim's Algorithm......Page 110
Section 20.1: Single Source Shortest Path Algorithm (Given there is a negative cycle in a graph)......Page 118
Section 20.2: Detecting Negative Cycle in a Graph......Page 121
Section 20.3: Why do we need to relax all the edges at most (V-1) times......Page 123
Section 21.1: Bresenham Line Drawing Algorithm......Page 126
Section 22.1: All Pair Shortest Path Algorithm......Page 129
Section 23.1: Catalan Number Algorithm Basic Information......Page 132
Section 24.3: merge-sort multithread......Page 134
Section 25.1: KMP-Example......Page 136
Section 26.1: Minimum Edits required to convert string 1 to string 2......Page 138
Chapter 27: Online algorithms......Page 141
Section 27.1: Paging (Online Caching)......Page 142
Section 28.1: Stability in Sorting......Page 148
Section 29.2: Implementation in C & C++......Page 149
Section 29.3: Implementation in C#......Page 150
Section 29.4: Python Implementation......Page 151
Section 29.6: Implementation in Javascript......Page 152
Section 30.1: Merge Sort Basics......Page 154
Section 30.3: Merge Sort Implementation in C & C#......Page 155
Section 30.4: Merge Sort Implementation in Java......Page 157
Section 30.5: Merge Sort Implementation in Python......Page 158
Section 30.6: Bottoms-up Java Implementation......Page 159
Section 31.1: Haskell Implementation......Page 161
Section 32.1: C# Implementation......Page 162
Section 33.1: Quicksort Basics......Page 163
Section 33.3: Lomuto partition java implementation......Page 165
Section 34.2: Psuedocode Implementation......Page 167
Section 35.2: Heap Sort Basic Information......Page 169
Section 36.1: Pseudocode Implementation......Page 171
Section 37.1: Odd-Even Sort Basic Information......Page 172
Section 38.2: Selection Sort Basic Information......Page 175
Section 38.3: Implementation of Selection sort in C#......Page 177
Section 39.1: Binary Search......Page 179
Section 39.2: Rabin Karp......Page 180
Section 39.3: Analysis of Linear search (Worst, Average and Best Cases)......Page 181
Section 39.5: Linear search......Page 183
Section 40.1: Introduction To Knuth-Morris-Pratt (KMP) Algorithm......Page 185
Section 40.2: Introduction to Rabin-Karp Algorithm......Page 188
Section 40.3: Python Implementation of KMP algorithm......Page 191
Section 40.4: KMP Algorithm in C......Page 192
Section 41.1: Finding the Shortest Path from Source to other Nodes......Page 195
Section 41.2: Finding Shortest Path from Source in a 2D graph......Page 201
Section 41.3: Connected Components Of Undirected Graph Using BFS......Page 202
Section 42.1: Introduction To Depth-First Search......Page 207
Section 43.1: Hash codes for common types in C#......Page 212
Section 43.2: Introduction to hash functions......Page 213
Section 44.2: Dynamic Programming Algorithm......Page 215
Section 45.2: Solution Implemented in C#......Page 217
Section 46.1: Linear Equation......Page 219
Section 46.2: Non-Linear Equation......Page 221
Section 47.1: Longest Common Subsequence Explanation......Page 225
Section 48.1: Longest Increasing Subsequence Basic Information......Page 230
Section 49.1: Sample input and output......Page 233
Section 49.2: Generic Code for Anagrams......Page 234
Section 50.1: Pascal triangle in C......Page 236
Section 51.2: Write the generic code......Page 237
Section 52.1: Matrix Exponentiation to Solve Example Problems......Page 238
Section 53.1: Algorithm Pseudo Code......Page 242
Section 54.1: Introduction To Dynamic Time Warping......Page 243
Section 55.1: Radix 2 FFT......Page 247
Section 55.2: Radix 2 Inverse FFT......Page 252
Section A.2: Functions......Page 254
Credits......Page 255
You may also like......Page 257