# Data Structures and Algorithms

Clean and simple implementation in Go

## Implementation

There are several data structures and algorithms implemented in this project. The list will be replenished with time.

##### Data structures

- Circular Buffer
- Linked List
- Doubly Linked List
- Stack
- Queue
- Binary Tree
- Hash Table
- Trie

##### Searching algorithms

- Linear Search
- Binary Search
- Jump Search
- Interpolation Search
- Exponential Search
- Ternary Search

##### String searching algorithms

- Naive String Search
- Rabin-Karp Algorithm

##### Sorting algorithms

- Selection Sort
- Insertion Sort
- Bubble Sort
- Comb Sort
- Cocktail Sort
- Gnome Sort
- Merge Sort

## Usage

The library is not intended for direct use by importing. We strongly recommend copying the necessary implementations and adjusting to your case.

You can download the source using `go get`

command:

```
go get github.com/floyernick/Data-Structures-and-Algorithms
```

Don't forget about proverb:

A little copying is better than a little dependency.

## Contribute

We would be happy to receive your propositions of improvement! Read Contributing Guide for more details.

## License

This project is licensed under the **MIT License**.

## Authors

**Mykyta Paliienko** - GitHub profile