Cocktail shaker sort, also known as bidirectional bubble sort, cocktail sort, shaker sort (which can also refer to a variant of choice sort), ripple sort, shuffle sort, or shuttle sort, is an extension of bubble sort. like most variants of bubble sort, cocktail shaker sort is used chiefly as an educational tool.

COMING SOON!

```
package main
/*
* Cocktail sort - https://en.wikipedia.org/wiki/Cocktail_sort
*/
func CocktailSort(arr []int) {
tmp := 0
for i := 0; i < len(arr)/2; i++ {
left := 0
right := len(arr) - 1
for left <= right {
if arr[left] > arr[left+1] {
tmp = arr[left]
arr[left] = arr[left+1]
arr[left+1] = tmp
}
left++
if arr[right-1] > arr[right] {
tmp = arr[right-1]
arr[right-1] = arr[right]
arr[right] = tmp
}
right--
}
}
}
```