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

https://github.com/sagar-gavhane/rahome

Popular data structures for writing efficient programs in JavaScript.
https://github.com/sagar-gavhane/rahome

data-structures hashtable javascript linked-list queue stack typescript

Last synced: 5 months ago
JSON representation

Popular data structures for writing efficient programs in JavaScript.

Awesome Lists containing this project

README

          


rahome


unicorn

Popular data structures for writing efficient programs in JavaScript.

![npm bundle size](https://img.shields.io/bundlephobia/minzip/rahome?label=size&style=flat-square)
![npm version](https://img.shields.io/npm/v/rahome?style=flat-square)
![npm downloads](https://img.shields.io/npm/dm/rahome?style=flat-square)
![gitHub tests](https://img.shields.io/github/workflow/status/sagar-gavhane/rahome/tests?label=tests&style=flat-square)

### Installing

This module is distributed via `npm` which is bundled with `node` and should be installed as one of your project's dependence.

```bash
npm install rahome --save
```

### Usage

```js
import { LinkedList } from 'rahome'

const list = new LinkedList()

list.add(10) // add 10 to list => [10]
list.add(20) // add 20 to list => [10] -> [20]
list.add(30) // add 20 to list => [10] -> [20] -> [30]
list.addFirst(5) // add 10 to list => [5] -> [10] -> [20] -> [30]
list.addLast(40) // add 40 to list => [5] -> [10] -> [20] -> [30] -> [40]

console.log(list.toString()) // 5,10,20,30,40

list.removeFirst()
list.removeLast()

console.log(list.toString()) // 10,20,30
console.log(list.isEmpty()) // false
console.log(list.contains(5)) // false
console.log(list.contains(10)) // true
list.clear()
console.log(list.isEmpty()) // true
```

[![Edit rahome-usage-example](https://codesandbox.io/static/img/play-codesandbox.svg)](https://codesandbox.io/s/rahome-usage-example-s47om?fontsize=14&hidenavigation=1&theme=dark)

### Data Structures

- [LinkedList](src/LinkedList/LinkedList.md)
- [Stack](src/Stack/Stack.md)
- [Queue](src/Queue/Queue.md)

### Contributing

Pull requests are welcome.

### License

MIT