jex-dll

1.1.0 • Public • Published

jex-dll

a doubly-linked list

Build Status

import DLL from 'jex-dll'
const list = new DLL()

Append to the list.

list.push('hello')
list.push('kitty')
 
list.nodes
[
  {
    prev: null,
    value: 'hello',
    next: 'kitty',
  },
  {
    prev: 'hello',
    value: 'kitty',
    next: null,
  },
]

Prepend to the list.

list.unshift('banana')
 
list.nodes
[
  {
    prev: null,
    value: 'banana',
    next: 'hello',
  },
  {
    prev: 'banana',
    value: 'hello',
    next: 'kitty',
  },
  {
    prev: 'hello',
    value: 'kitty',
    next: null,
  },
]

Remove stuff by index.

list.remove(0)
 
list.nodes
[
  {
    prev: null,
    value: 'hello',
    next: 'kitty',
  },
  {
    prev: 'hello',
    value: 'kitty',
    next: null,
  },
]

Insert at index.

list.insert(1, 'apples')
 
list.nodes
[
  {
    prev: null,
    value: 'hello',
    next: 'apples',
  },
  {
    prev: 'hello',
    value: 'apples',
    next: 'kitty',
  },
  {
    prev: 'apples',
    value: 'kitty',
    next: null,
  },
]

Move stuff from one index to another.

list.move(0, 2)
 
list.nodes
[
  {
    prev: null,
    value: 'apples',
    next: 'kitty',
  },
  {
    prev: 'apples',
    value: 'kitty',
    next: 'hello',
  },
  {
    prev: 'kitty',
    value: 'hello',
    next: null,
  },
])

/jex-dll/

    Package Sidebar

    Install

    npm i jex-dll

    Weekly Downloads

    0

    Version

    1.1.0

    License

    ISC

    Unpacked Size

    7.97 kB

    Total Files

    3

    Last publish

    Collaborators

    • reergymerej