PBCD.Algorithms 1.0.6709.20566

General purpose data structures and algorithms mostly to cover the functionallity or performance gap in the framework.
Includes: ProrityQueue, Bag, SymboleTable, Trie, UnionFind, Search Trees (BST, OST, RBT), sorting and graph algorithms.

There is a newer version of this package available.
See the version list below for details.
`Install-Package PBCD.Algorithms -Version 1.0.6709.20566`
`dotnet add package PBCD.Algorithms --version 1.0.6709.20566`
`<PackageReference Include="PBCD.Algorithms" Version="1.0.6709.20566" />`
For projects that support PackageReference, copy this XML node into the project file to reference the package.
`paket add PBCD.Algorithms --version 1.0.6709.20566`

Documentation

See Algorithms, 4th Edition by Robert Sedgewick and Kevin Wayne

Here is the repository of this package.

The main name space is called Algorithms which includes the following sub name spaces:

• ComputationalGeometry
• DataStructure
• Graphs
• Randomization
• SearchTree
• Sort
• ComputationalGeometry
• ConvexHull: Gets a set of 2D points and returns a subset of them representing the smallest convex polygon that includes all points.
• DataStructure
• PriorityQueue: There are two implemented versions this DS, MaxPriorityQueue and MaxPriorityQueue.
• UnionFind_QU: Uses Quick-Union algorithm for calculating connectec components in O(1). Each component is presented by a number.
• TRIE: This TRIE works with any chain of keys and not just strings. Also, in additional to regular TRIE functions, this one returns number of matching prefixes in O(l) where l is the length of the prefix.
• Graphs
• Digraph
• Digraph: Represents a directed graph. This
• TopologicalSort: Gets a digraph and return their IDs sorted topological
• DirectedBFS: Gets a digraph and the index of the source vertex and calculates the path to every other vertex (if existing) using Depth-first search algorithm. HasPathTo(v) costs O(1) to check if there is a path to vertex v.
• DirectedDFS: Same as DirectedBFS but uses Breadth-first search algorithm.
• SCC_KosarajuSharir : Uses Kosaraju Sharir Algorithm (TopologicalSort class) to calcualte Strongly connected component
• BipartiteGraph: Departs the graph into two groups if possible and returns true. Otherwise returns false
• DepthFirstPaths
• ConnectedComponents
• Graph
• Randomization
• WeightedRandom: Randomly select specified number of items from the list.The items with higher weight are in the result with higher probability.
• SearchTree
• BinarySearchTree
• RedBlackTree: It is a Left Leaning Red-Black tree (LLRB Tree)
• OST: Order Statistics Tree is a RedBlack tree which is able to return the rank of each elements
• Sort : All sorts of sorts

See Algorithms, 4th Edition by Robert Sedgewick and Kevin Wayne

Here is the repository of this package.

The main name space is called Algorithms which includes the following sub name spaces:

• ComputationalGeometry
• DataStructure
• Graphs
• Randomization
• SearchTree
• Sort
• ComputationalGeometry
• ConvexHull: Gets a set of 2D points and returns a subset of them representing the smallest convex polygon that includes all points.
• DataStructure
• PriorityQueue: There are two implemented versions this DS, MaxPriorityQueue and MaxPriorityQueue.
• UnionFind_QU: Uses Quick-Union algorithm for calculating connectec components in O(1). Each component is presented by a number.
• TRIE: This TRIE works with any chain of keys and not just strings. Also, in additional to regular TRIE functions, this one returns number of matching prefixes in O(l) where l is the length of the prefix.
• Graphs
• Digraph
• Digraph: Represents a directed graph. This
• TopologicalSort: Gets a digraph and return their IDs sorted topological
• DirectedBFS: Gets a digraph and the index of the source vertex and calculates the path to every other vertex (if existing) using Depth-first search algorithm. HasPathTo(v) costs O(1) to check if there is a path to vertex v.
• DirectedDFS: Same as DirectedBFS but uses Breadth-first search algorithm.
• SCC_KosarajuSharir : Uses Kosaraju Sharir Algorithm (TopologicalSort class) to calcualte Strongly connected component
• BipartiteGraph: Departs the graph into two groups if possible and returns true. Otherwise returns false
• DepthFirstPaths
• ConnectedComponents
• Graph
• Randomization
• WeightedRandom: Randomly select specified number of items from the list.The items with higher weight are in the result with higher probability.
• SearchTree
• BinarySearchTree
• RedBlackTree: It is a Left Leaning Red-Black tree (LLRB Tree)
• OST: Order Statistics Tree is a RedBlack tree which is able to return the rank of each elements
• Sort : All sorts of sorts

Release Notes

This is the first published package

Dependencies

This package has no dependencies.

GitHub Usage

This package is not used by any popular GitHub repositories.