Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/amaui-org/amaui-heap

Min/Max Heap
https://github.com/amaui-org/amaui-heap

algorithm amaui back-end backend binary-search-tree binary-tree browser front-end frontend heap javascript js max-heap min-heap node nodejs priority-queue typescript utils web

Last synced: 7 days ago
JSON representation

Min/Max Heap

Awesome Lists containing this project

README

        



amaui logo

amaui Heap


Min/Max Heap



MIT license    
Production ready    
UMD 2kb gzipped    
100% test cov    
Browser and Nodejs


Very simple code    
Modern code    
Junior friendly    
Typescript    
Made with :yellow_heart:


## Getting started

### Add

```sh
yarn add @amaui/heap
```

### Use cases
- Priority queues
- Schedulers
- etc.

### Use

```javascript
import { AmauiHeap } from '@amaui/heap';

// Make a new heap instance
// with an optional initial value a variant (min or max)
// a min heap as a default value
const amauiMinHeap = new AmauiHeap();

// Add a amaui node / value
amauiMinHeap.add(4);

// You can also make a heap from array of values
amauiMinHeap.make([4, 44, 54, 14, 31, 37, 24]);

// values
4
/ \
/ \
14 24
/ \ / \
44 31 37 54

// Remove priority min (first) value
amauiMinHeap.remove();

// 4

// values
14
/ \
/ \
31 24
/ \ /
44 54 37
```

### Dev

Install

```sh
yarn
```

Test

```sh
yarn test
```

### Prod

Build

```sh
yarn build
```