go-algos
                                
                                 go-algos copied to clipboard
                                
                                    go-algos copied to clipboard
                            
                            
                            
                        Google Go Programming Language Algorithms

Here is a collection of various Computer Science related algorithms for the Go programming language a.k.a. golang.
Much of the code is from RosettaCode and standard lib, and is referenced within the file as required.
Examples are available inside the examples folder
Table of Contents
Sorting
Compression
Trees
Artificial Intelligence
Search
Concurrency
Sorting
- BubbleSort
- QuickSort
- InsertionSort
- MergeSort
- CountSort
- SelectionSort
- ShellSort
- HeapSort
Compression
- Lempel–Ziv–Welch (LZW)
- Burrows–Wheeler Transform (BWT)
- Huffman Encodings
Trees
- B+ Tree
- AVL-Tree
- KD-Tree
Artificial Intelligence
- A* Search
- Bayesian Networks
- Neural Networks
- Decision Tree
Search
- Page-Rank
- Depth-First Search
- Breadth-First Search
- Binary Search
Concurrency Locks
- WaitGroup (Barrier)
- Mutex Lock
- Semaphore
- Condition Variable
- Spin Lock