Ordered Set
by Nicholas C. Zakas
If you find this useful, please consider supporting my work with a donation.
Description
A JavaScript data structure that allows random access and traversal of a set's items. This is implemented as a doubly-linked list behinds the scenes.
Installation
You can install using npm or Yarn:
npm install @humanwhocodes/ordered-set --save
yarn add @humanwhocodes/ordered-set
Usage
Retrieve the OrderedSet
constructor and use the methods:
const { OrderedSet } = require("@humanwhocodes/ordered-set");
const set = new OrderedSet();
set.add(1);
set.add(2);
set.add(3);
const prev = set.previous(2);
const next = set.next(1);
const exists = set.has(2);
const size = set.size;
const first = set.first();
const last = set.last();
const value1 = set.findNext(value => value > 1, 1);
const value2 = set.findPrevious(value => value > 1, 3);
set.delete(1);
let values1 = [...set.values()];
let values2 = [...set];
let values3 = [...set.reverse()];
License
Apache 2.0