Algorithms Notes for Professionals book

    Amazing collection of free programming books

    5.0
    免费
    Amazing collection of free programming books

    The Notes for Professionals book is compiled from Stack Overflow Documentation, the content is written by the beautiful people at Stack Overflow. Text content is released under Creative Commons BY-SA. See credits at the end of this book whom contributed to the various chapters. Images may be copyright of their respective owners unless otherwise specified

    Book created for educational purposes and is not affiliated with group(s), company(s) nor Stack Overflow. All trademarks belong to their respective company owners

    https://goalkicker.com/

    章节目录

    1-1Content list
    1-2About
    1-3Chapter 1: Getting started with algorithms
    1-4Section 1.1: A sample algorithmic problem
    1-5Section 1.2: Getting Started with Simple Fizz Buzz Algorithm in Swift
    1-6Chapter 2: Algorithm Complexity
    1-7Section 2.1: Big-Theta notation
    1-8Section 2.2: Comparison of the asymptotic notations
    1-9Section 2.3: Big-Omega Notation
    1-10Chapter 3: Big-O Notation
    1-11Section 3.1: A Simple Loop
    1-12Section 3.2: A Nested Loop
    1-13Section 3.3: O(log n) types of Algorithms
    1-14Section 3.4: An O(log n) example
    1-15Chapter 4: Trees
    1-16Section 4.1: Typical anary tree representation
    1-17Section 4.2: Introduction
    1-18Section 4.3: To check if two Binary trees are same or not
    1-19Chapter 5: Binary Search Trees
    1-20Section 5.1: Binary Search Tree - Insertion (Python)
    1-21Section 5.2: Binary Search Tree - Deletion(C++)
    1-22Section 5.3: Lowest common ancestor in a BST
    1-23Section 5.4: Binary Search Tree - Python
    1-24Chapter 6: Check if a tree is BST or not
    1-25Section 6.1: Algorithm to check if a given binary tree is BST
    1-26Section 6.2: If a given input tree follows Binary search tree property or not
    1-27Chapter 7: Binary Tree traversals
    1-28Section 7.1: Level Order traversal - Implementation
    1-29Section 7.2: Pre-order, Inorder and Post Order traversal of a Binary Tree
    1-30Chapter 8: Lowest common ancestor of a Binary Tree
    1-31Section 8.1: Finding lowest common ancestor
    1-32Chapter 9: Graph
    1-33Section 9.1: Storing Graphs (Adjacency Matrix)
    1-34Section 9.2: Introduction To Graph Theory
    1-35Section 9.3: Storing Graphs (Adjacency List)
    1-36Section 9.4: Topological Sort
    1-37Section 9.5: Detecting a cycle in a directed graph using Depth First Traversal
    1-38Section 9.6: Thorup's algorithm
    1-39Chapter 10: Graph Traversals
    1-40Section 10.1: Depth First Search traversal function
    1-41Chapter 11: Dijkstra’s Algorithm
    1-42Section 11.1: Dijkstra's Shortest Path Algorithm
    1-43Chapter 12: A* Pathfinding
    1-44Section 12.1: Introduction to A*
    1-45Section 12.2: A* Pathfinding through a maze with no obstacles
    1-46Section 12.3: Solving 8-puzzle problem using A* algorithm
    1-47Chapter 13: A* Pathfinding Algorithm
    1-48Section 13.1: Simple Example of A* Pathfinding: A maze with no obstacles
    1-49Chapter 14: Dynamic Programming
    1-50Section 14.1: Edit Distance
    1-51Section 14.2: Weighted Job Scheduling Algorithm
    1-52Section 14.3: Longest Common Subsequence
    1-53Section 14.4: Fibonacci Number
    1-54Section 14.5: Longest Common Substring
    1-55Chapter 15: Applications of Dynamic Programming
    1-56Section 15.1: Fibonacci Numbers
    1-57Chapter 16: Kruskal's Algorithm
    1-58Section 16.1: Optimal, disjoint-set based implementation
    1-59Section 16.2: Simple, more detailed implementation
    1-60Section 16.3: Simple, disjoint-set based implementation
    1-61Section 16.4: Simple, high level implementation
    1-62Chapter 17: Greedy Algorithms
    1-63Section 17.1: Human Coding
    1-64Section 17.2: Activity Selection Problem
    1-65Section 17.3: Change-making problem
    1-66Chapter 18: Applications of Greedy technique
    1-67Section 18.1: Oine Caching
    1-68Section 18.2: Ticket automat
    1-69Section 18.3: Interval Scheduling
    1-70Section 18.4: Minimizing Lateness
    1-71Chapter 19: Prim's Algorithm
    1-72Section 19.1: Introduction To Prim's Algorithm
    1-73Chapter 20: Bellman–Ford Algorithm
    1-74Section 20.1: Single Source Shortest Path Algorithm (Given there is a negative cycle in a graph)
    1-75Section 20.2: Detecting Negative Cycle in a Graph
    1-76Section 20.3: Why do we need to relax all the edges at most (V-1) times
    1-77Chapter 21: Line Algorithm
    1-78Section 21.1: Bresenham Line Drawing Algorithm
    1-79Chapter 22: Floyd-Warshall Algorithm
    1-80Section 22.1: All Pair Shortest Path Algorithm
    1-81Chapter 23: Catalan Number Algorithm
    1-82Section 23.1: Catalan Number Algorithm Basic Information
    1-83Chapter 24: Multithreaded Algorithms
    1-84Section 24.1: Square matrix multiplication multithread
    1-85Section 24.2: Multiplication matrix vector multithread
    1-86Section 24.3: merge-sort multithread
    1-87Chapter 25: Knuth Morris Pratt (KMP) Algorithm
    1-88Section 25.1: KMP-Example
    1-89Chapter 26: Edit Distance Dynamic Algorithm
    1-90Section 26.1: Minimum Edits required to convert string 1 to string 2
    1-91Chapter 27: Online algorithms
    1-92Section 27.1: Paging (Online Caching)
    1-93Chapter 28: Sorting
    1-94Section 28.1: Stability in Sorting
    1-95Chapter 29: Bubble Sort
    1-96Section 29.1: Bubble Sort
    1-97Section 29.2: Implementation in C & C++
    1-98Section 29.3: Implementation in C#
    1-99Section 29.4: Python Implementation
    1-100Section 29.5: Implementation in Java
    1-101Section 29.6: Implementation in Javascript
    1-102Chapter 30: Merge Sort
    1-103Section 30.1: Merge Sort Basics
    1-104Section 30.2: Merge Sort Implementation in Go
    1-105Section 30.3: Merge Sort Implementation in C & C#
    1-106Section 30.4: Merge Sort Implementation in Java
    1-107Section 30.5: Merge Sort Implementation in Python
    1-108Section 30.6: Bottoms-up Java Implementation
    1-109Chapter 31: Insertion Sort
    1-110Section 31.1: Haskell Implementation
    1-111Chapter 32: Bucket Sort
    1-112Section 32.1: C# Implementation
    1-113Chapter 33: Quicksort
    1-114Section 33.1: Quicksort Basics
    1-115Section 33.2: Quicksort in Python
    1-116Section 33.3: Lomuto partition java implementation
    1-117Chapter 34: Counting Sort
    1-118Section 34.1: Counting Sort Basic Information
    1-119Section 34.2: Psuedocode Implementation
    1-120Chapter 35: Heap Sort
    1-121Section 35.1: C# Implementation
    1-122Section 35.2: Heap Sort Basic Information
    1-123Chapter 36: Cycle Sort
    1-124Section 36.1: Pseudocode Implementation
    1-125Chapter 37: Odd-Even Sort
    1-126Section 37.1: Odd-Even Sort Basic Information
    1-127Chapter 38: Selection Sort
    1-128Section 38.1: Elixir Implementation
    1-129Section 38.2: Selection Sort Basic Information
    1-130Section 38.3: Implementation of Selection sort in C#
    1-131Chapter 39: Searching
    1-132Section 39.1: Binary Search
    1-133Section 39.2: Rabin Karp
    1-134Section 39.3: Analysis of Linear search (Worst, Average and Best Cases)
    1-135Section 39.4: Binary Search: On Sorted Numbers
    1-136Section 39.5: Linear search
    1-137Chapter 40: Substring Search
    1-138Section 40.1: Introduction To Knuth-Morris-Pratt (KMP) Algorithm
    1-139Section 40.2: Introduction to Rabin-Karp Algorithm
    1-140Section 40.3: Python Implementation of KMP algorithm
    1-141Section 40.4: KMP Algorithm in C
    1-142Chapter 41: Breadth-First Search
    1-143Section 41.1: Finding the Shortest Path from Source to other Nodes
    1-144Section 41.2: Finding Shortest Path from Source in a 2D graph
    1-145Section 41.3: Connected Components Of Undirected Graph Using BFS
    1-146Chapter 42: Depth First Search
    1-147Section 42.1: Introduction To Depth-First Search
    1-148Chapter 43: Hash Functions
    1-149Section 43.1: Hash codes for common types in C#
    1-150Section 43.2: Introduction to hash functions
    1-151Chapter 44: Travelling Salesman
    1-152Section 44.1: Brute Force Algorithm
    1-153Section 44.2: Dynamic Programming Algorithm
    1-154Chapter 45: Knapsack Problem
    1-155Section 45.1: Knapsack Problem Basics
    1-156Section 45.2: Solution Implemented in C#
    1-157Chapter 46: Equation Solving
    1-158Section 46.1: Linear Equation
    1-159Section 46.2: Non-Linear Equation
    1-160Chapter 47: Longest Common Subsequence
    1-161Section 47.1: Longest Common Subsequence Explanation
    1-162Chapter 48: Longest Increasing Subsequence
    1-163Section 48.1: Longest Increasing Subsequence Basic Information
    1-164Chapter 49: Check two strings are anagrams
    1-165Section 49.1: Sample input and output
    1-166Section 49.2: Generic Code for Anagrams
    1-167Chapter 50: Pascal's Triangle
    1-168Section 50.1: Pascal triangle in C
    1-169Chapter 51: Algo:- Print a m*n matrix in square wise
    1-170Section 51.1: Sample Example
    1-171Section 51.2: Write the generic code
    1-172Chapter 52: Matrix Exponentiation
    1-173Section 52.1: Matrix Exponentiation to Solve Example Problems
    1-174Chapter 53: polynomial-time bounded algorithm for Minimum Vertex Cover
    1-175Section 53.1: Algorithm Pseudo Code
    1-176Chapter 54: Dynamic Time Warping
    1-177Section 54.1: Introduction To Dynamic Time Warping
    1-178Chapter 55: Fast Fourier Transform
    1-179Section 55.1: Radix 2 FFT
    1-180Section 55.2: Radix 2 Inverse FFT
    1-181Appendix A: Pseudocode
    1-182Section A.1: Variable aectations
    1-183Section A.2: Functions
    1-184Credits
    1-185You may also like

    常见问答

    您可以透過手機、平板或是電腦登入 HiSKIO 平台,在【我的學習】>【我的書籍】頁面,選擇想看的電子書。

    猜你喜欢

    销售方案