# Cube

[![Black Tech by Gabriel Rufino](https://img.shields.io/badge/Black_Tech-by_Gabriel_Rufino_%F0%9F%96%A4-white?style=flat-square&labelColor=444444)](https://gabrielrufino.com)
[![CI](https://github.com/gabrielrufino/cube/actions/workflows/ci.yml/badge.svg)](https://github.com/gabrielrufino/cube/actions/workflows/ci.yml)
[![CD](https://github.com/gabrielrufino/cube/actions/workflows/cd.yml/badge.svg)](https://github.com/gabrielrufino/cube/actions/workflows/cd.yml)
[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=gabrielrufino_cube&metric=alert_status)](https://sonarcloud.io/summary/new_code?id=gabrielrufino_cube)

Data structures made in Typescript

## Getting started

#### Installing package

```bash
npm install @gabrielrufino/cube
```

#### Importing package

<small>ESModules:</small>
```js
import cube from '@gabrielrufino/cube'
```

<small>CommonJS:</small>
```js
const cube = require('@gabrielrufino/cube')
```

## Data Structures

* [Array/List](./docs/Array.md)
* [Stack](./docs/Stack.md)
* [Queue](./docs/Queue.md)
* [Deck](./docs/Deck.md)
* [Linked List](./docs/LinkedList.md)
* [Doubly Linked List](./docs/DoublyLinkedList.md)
* [Set](./docs/Set.md)
* [Dictionary](./docs/Dictionary.md)
* [Hash Table](./docs/HashTable.md)
* [Hash Table Separate Chaining](./docs/HashTableSeparateChaining.md)
* [Hash Table Linear Probing](./docs/HashTableLinearProbing.md)
* [Binary Search Tree](./docs/BinarySearchTree.md)
* [Min Heap](./docs/MinHeap.md)
* [Max Heap](./docs/MaxHeap.md)
* [Graph](./docs/Graph.md)
