@nebula/binary-tree-printer
A tool used for printing a binary tree structure in a visualizing way.
npm install @n3bula/binary-tree-printer
# or
yarn add @n3bula/binary-tree-printer
# or
pnpm add @n3bula/binary-tree-printer
import bTreePrinter from '@nebula/binary-tree-printer';
// const bTreePrinter = require('@nebula/binary-tree-printer');
console.log(
bTreePrinter(
{
value: 1,
left: null,
right: {
value: 2,
left: {
value: 3,
left: null,
right: null,
},
right: {
value: 4,
left: null,
right: null,
},
},
},
{
minLength: 5,
marks: {
dash: '-',
lb: '^',
joint: '^',
},
},
),
);
console.log(
bTreePrinter({
value: 1,
left: {
value: 2,
left: {
value: 4,
left: {
value: 8,
left: null,
right: null,
},
right: {
value: 9,
left: null,
right: null,
},
},
right: {
value: 5,
left: {
value: 10,
left: null,
right: null,
},
right: {
value: 11,
left: null,
right: null,
},
},
},
right: {
value: 3,
left: {
value: 6,
left: {
value: 12,
left: null,
right: null,
},
right: {
value: 13,
left: null,
right: null,
},
},
right: {
value: 7,
left: {
value: 14,
left: null,
right: null,
},
right: {
value: 15,
left: null,
right: null,
},
},
},
}),
);
![result](./public/result.png)
<body>
<script src="../lib/bundle.min.js"></script>
<script>
console.log(
bTreePrinter(
{
value: 1,
left: null,
right: {
value: '๐',
left: {
value: 3,
left: null,
right: null,
},
right: {
value: 4,
left: null,
right: null,
},
},
},
{
minLength: 5,
marks: {
dash: '-',
lb: '^',
joint: '^',
},
},
),
);
</script>
</body>
option |
value |
description |
minLength |
number |
padding length (default: 2) |
marks |
object |
tree branches placeholder |
marks.dash |
string |
(default: 'โ') |
marks.lt |
string |
(default: 'โ') |
marks.rt |
string |
(default: 'โ') |
marks.lb |
string |
(default: 'โ') |
marks.rb |
string |
(default: 'โ') |
marks.joint |
string |
(default: 'โป') |
The MIT License(MIT)