Go

module
v0.0.2-alpha Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 8, 2021 License: MIT

README

The Algorithms - Go

Gitpod Ready-to-Code  golangci-lint   update_directory_md Discord chat 

Algorithms implemented in Go (for education)

The repository is a collection of open-source implementation of a variety of algorithms implemented in Go and licensed under MIT License.

Read our Contribution Guidelines before you contribute.

List of Algorithms

Ciphers

Conversions

Data Structures

Design Patterns

Dynamic Programming

Genetic Algorithm

Graphs

Math

Other

Searches

Sorts

Strings

Directories

Path Synopsis
Package cipher is a package containing different implementations of certain ciphers
Package cipher is a package containing different implementations of certain ciphers
caesar
Package caesar is the shift cipher ref: https://en.wikipedia.org/wiki/Caesar_cipher
Package caesar is the shift cipher ref: https://en.wikipedia.org/wiki/Caesar_cipher
diffiehellman
Package diffiehellman implements Deffie Hellman Key Exchange Algorithm for more information watch : https://www.youtube.com/watch?v=NmM9HA2MQGI
Package diffiehellman implements Deffie Hellman Key Exchange Algorithm for more information watch : https://www.youtube.com/watch?v=NmM9HA2MQGI
polybius
Package polybius is encrypting method with polybius square ref: https://en.wikipedia.org/wiki/Polybius_square#Hybrid_Polybius_Playfair_Cipher
Package polybius is encrypting method with polybius square ref: https://en.wikipedia.org/wiki/Polybius_square#Hybrid_Polybius_Playfair_Cipher
rot13
Package rot13 is a simple letter substitution cipher that replaces a letter with the 13th letter after it in the alphabet.
Package rot13 is a simple letter substitution cipher that replaces a letter with the 13th letter after it in the alphabet.
rsa
Package rsa shows a simple implementation of RSA algorithm
Package rsa shows a simple implementation of RSA algorithm
xor
Package xor is an encryption algorithm that operates the exclusive disjunction(XOR) ref: https://en.wikipedia.org/wiki/XOR_cipher
Package xor is an encryption algorithm that operates the exclusive disjunction(XOR) ref: https://en.wikipedia.org/wiki/XOR_cipher
Package conversion is a package of implementations which converts one data structure to another.
Package conversion is a package of implementations which converts one data structure to another.
Package dynamic is a package of certain implementations of dynamically run algorithms.
Package dynamic is a package of certain implementations of dynamically run algorithms.
Package graph demonstates Graph search algorithms reference: https://en.wikipedia.org/wiki/Tree_traversal
Package graph demonstates Graph search algorithms reference: https://en.wikipedia.org/wiki/Tree_traversal
Package math is a package that contains mathematical algorithms and its different implementations.
Package math is a package that contains mathematical algorithms and its different implementations.
gcd
lcm
max
Package other is dedicated to algorithms that do not quite fit into any of the other subpackages in this repository.
Package other is dedicated to algorithms that do not quite fit into any of the other subpackages in this repository.
maxsubarraysum
Package maxsubarraysum is a package containing a solution to a common problem of finding max contigious sum within a array of ints.
Package maxsubarraysum is a package containing a solution to a common problem of finding max contigious sum within a array of ints.
nested
Package nested provides functions for testing strings propper brackets nesting.
Package nested provides functions for testing strings propper brackets nesting.
password
Package password contains functions to help generate random passwords
Package password contains functions to help generate random passwords
Package search is a subpackage dedicated to all searching algorithms related to slices/arrays.
Package search is a subpackage dedicated to all searching algorithms related to slices/arrays.
Package sort a package for demonstrating sorting algorithms in Go
Package sort a package for demonstrating sorting algorithms in Go
Package strings is a package that contains all algorithms that are used to analyse and manipulate strings.
Package strings is a package that contains all algorithms that are used to analyse and manipulate strings.
bom
combination
Package combination ...
Package combination ...
genetic
Package genetic provides functions to work with strings using genetic algorithm.
Package genetic provides functions to work with strings using genetic algorithm.
kmp
Package structure is a subpackage that is dedicated to different implementations of data structures in the domain of computer science.
Package structure is a subpackage that is dedicated to different implementations of data structures in the domain of computer science.
avl
Package avl is a Adelson-Velskii and Landis tree implemnation avl is self-balancing tree, i.e for all node in a tree, height difference between its left and right child will not exceed 1 more information : https://en.wikipedia.org/wiki/AVL_tree
Package avl is a Adelson-Velskii and Landis tree implemnation avl is self-balancing tree, i.e for all node in a tree, height difference between its left and right child will not exceed 1 more information : https://en.wikipedia.org/wiki/AVL_tree
dynamicarray
Package dynamicarray A dynamic array is quite similar to a regular array, but its Size is modifiable during program runtime, very similar to how a slice in Go works.
Package dynamicarray A dynamic array is quite similar to a regular array, but its Size is modifiable during program runtime, very similar to how a slice in Go works.
linkedlist
Package linkedlist demonstates different implementations on linkedlists.
Package linkedlist demonstates different implementations on linkedlists.
set
trie
Package trie provides Trie data structures in golang.
Package trie provides Trie data structures in golang.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL