|
|
|
go-algorithms
|
|
|
|
=============
|
|
|
|
|
|
|
|
`go-algorithms` - implementation of different algorithms and data structures with `golang`.
|
|
|
|
|
|
|
|
Usage
|
|
|
|
-----
|
|
|
|
|
|
|
|
1. Clone `https://github.com/0xAX/go-algorithms.git` repo, it must be in your `$GOPATH`.
|
|
|
|
|
|
|
|
2. Execute `go build && go install` in `go-algorithms`
|
|
|
|
|
|
|
|
3. Execute `go build bubble_sort.go` and `./bubble_sort`
|
|
|
|
|
|
|
|
Algorithms
|
|
|
|
----------
|
|
|
|
|
|
|
|
#### Sorting
|
|
|
|
|
|
|
|
* [bubble sort](https://en.wikipedia.org/wiki/Bubble_sort)
|
|
|
|
* [selection sort](https://en.wikipedia.org/wiki/Selection_sort)
|
|
|
|
* [merge sort](https://en.wikipedia.org/wiki/Merge_sort)
|
|
|
|
* [cocktail sort](https://en.wikipedia.org/wiki/Cocktail_shaker_sort)
|
|
|
|
* [gnome sort](https://en.wikipedia.org/wiki/Gnome_sort)
|
|
|
|
* [quick sort](https://en.wikipedia.org/wiki/Quicksort)
|
|
|
|
* [comb sort](https://en.wikipedia.org/wiki/Comb_sort)
|
|
|
|
* [odd-even sort](https://en.wikipedia.org/wiki/Odd%E2%80%93even_sort)
|
|
|
|
* [heap sort](https://en.wikipedia.org/wiki/Heapsort)
|
|
|
|
* [Shell sort](https://en.wikipedia.org/wiki/Shellsort)
|
|
|
|
* [counting sort](https://en.wikipedia.org/wiki/Counting_sort)
|
|
|
|
|
|
|
|
#### Searching
|
|
|
|
|
|
|
|
* [binary search](https://en.wikipedia.org/wiki/Binary_search_algorithm)
|
|
|
|
* [linear search](https://en.wikipedia.org/wiki/Linear_search)
|
|
|
|
* [jump search](https://en.wikipedia.org/wiki/Jump_search)
|
|
|
|
|
|
|
|
#### Collections
|
|
|
|
|
|
|
|
* [doubly linked list](https://en.wikipedia.org/wiki/Doubly_linked_list)
|
|
|
|
* [binary tree](https://en.wikipedia.org/wiki/Binary_search_tree)
|
|
|
|
* [stack](https://en.wikipedia.org/wiki/Stack_(abstract_data_type))
|
|
|
|
* [queue](https://en.wikipedia.org/wiki/Queue_(abstract_data_type))
|
|
|
|
|
|
|
|
#### Numerical
|
|
|
|
|
|
|
|
* [gcd](https://en.wikipedia.org/wiki/Greatest_common_divisor)
|
|
|
|
* [factorial](https://en.wikipedia.org/wiki/Factorial)
|
|
|
|
* [fibonacci](https://en.wikipedia.org/wiki/Fibonacci_number)
|
|
|
|
|
|
|
|
Contribution
|
|
|
|
------------
|
|
|
|
|
|
|
|
* Fork [go-algorithms](https://github.com/0xAX/go-algorithms);
|
|
|
|
* Make changes;
|
|
|
|
* Send pull request;
|
|
|
|
* Thank you.
|
|
|
|
|
|
|
|
Author
|
|
|
|
------
|
|
|
|
|
|
|
|
[@0xAX](https://twitter.com/0xAX)
|