**Quark-dsa**

The Quark-dsa is a JavaScript utility library for data structures and operations on it. It is built using TypeScript and includes data structures Stack, Queue, Tree, Graph and many more.

All documentation for this library can be found here.

## Install

```
npm install quark-dsa
```

## Usage

There are several utility functions in quark-dsa, those you can use for performing data structures and operations.

- String: Check if string is palindrome and reverse the string are supported.
- Number: Check if number is palindrome, reverse the number and check if number is prime is supported.
- Array: Remove duplicates from an array and calculation of mean, median and mode are supported.

## Highlights

quark-dsa provides following data startuctures and common operations (more work is going on...):

- Stack: Basic push, pop, peek, length and serach operations are supported.
- Queue: Basic enqueue, dequeue, length and search operations are supported.
- Linked List: Construct, add node, update node, delete node, reverse, concat, get middle node, rotate operations are supported.
- Binary Tree: Construct, insert/update/delete node of the tree. Traversal paths of the tree (preorder, inorder, postorder, level order traversal), inverting the tree.

quark-dsa also provides commonly used algorithms as utility functions.

- Searching: Linear and Binary search algorithms are added to give position of key in the list.

quark-dsa provides sorting algorithms as utility functions.

- Sorting: Bubble Sort, Selection Sort, Insertion Sort, Merge Sort, Quick Sort, Radix Sort.

## Download Details:

Author: suhasbhattu

Source Code: https://github.com/suhasbhattu/quark-dsa

License: **ISC**

#javascript #datastructures