0.0.4 • Published 9 months ago

@n3bula/binary-tree-printer v0.0.4

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

!!! This package has been deprecated. Please use @n3bula/bin-tree as a replacement.

@n3bula/binary-tree-printer

A tool used for printing a binary tree structure in a visualizing way.

Install

npm install @n3bula/binary-tree-printer
# or
yarn add @n3bula/binary-tree-printer
# or
pnpm add @n3bula/binary-tree-printer

Use

ESModule / CommonJS

import bTreePrinter from '@n3bula/binary-tree-printer';
// const bTreePrinter = require('@n3bula/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

CDN

<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>

Options

optionvaluedescription
minLengthnumberpadding length (default: 2)
marksobjecttree branches placeholder
marks.dashstring(default: '━')
marks.ltstring(default: '┏')
marks.rtstring(default: '┓')
marks.lbstring(default: '┗')
marks.rbstring(default: '┛')
marks.jointstring(default: '┻')

Author

License

The MIT License(MIT)

0.0.4

9 months ago

0.0.3

9 months ago

0.0.2

9 months ago

0.0.1

9 months ago