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

    常见问答

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

    猜你喜欢

    销售方案