1.1.1 • Published 2 months ago

@romainfieve/data-structures-converters v1.1.1

Weekly downloads
-
License
MIT
Repository
github
Last release
2 months ago

💾🏰♻️ data-structures-converters

A TypeScript library to convert binary-search-trees, doubly linked lists of any types to one another.

Table of Content

Installation

yarn add @romainfieve/data-structures-converters

or

npm install @romainfieve/data-structures-converters

Documentation

convertDLLtoBST, convertBSTtoDLLInstance

Converts a doubly linked list to a binary search tree, depending on a given compare function if provided.

const compare = (a: number, b: number) => a - b;
const arr = [10, 32, 13, 2, 89, 5, 50];

const list = toDLL(arr, compare);
// Schema of "list"
//
// 2 <-> 5 <-> 10 <-> 13 <-> 32 <-> 50 <-> 89
//

const tree = convertDLLtoBST(list, compare);
// Schema of "tree"
//
//           13
//        /     \
//       5      50
//     /  \    /  \
//    2   10  32   89
//

convertBSTtoDLL, convertDLLtoBSTInstance

Converts a binary search tree to a doubly linked list, depending on a given compare function if provided.

const compare = (a: number, b: number) => a - b;
const arr = [10, 32, 13, 2, 89, 5, 50];

const tree = toBST(list, compare);
// Schema of "tree"
//
//           13
//        /     \
//       5      50
//     /  \    /  \
//    2   10  32   89
//

const list = convertBSTtoDLL(tree, compare);
// Schema of "list"
//
// 2 <-> 5 <-> 10 <-> 13 <-> 32 <-> 50 <-> 89
//