interval-tree-1d

1D interval tree data structure

MIT 7 个版本
安装
npm install interval-tree-1d
yarn add interval-tree-1d
pnpm add interval-tree-1d
bun add interval-tree-1d
README

interval-tree-1d

A simple 1D interval tree. Supports O(log(n)) amortized updates and O(log(n)) queries.

build status

Example

var createIntervalTree = require("interval-tree-1d")

//Create some random list of intervals
var intervals = [ [1, 2], [-1, 0], [0.5, 1], [-10, 10] ]

//Build tree
var tree = createIntervalTree(intervals)

//Find all intervals containing query point 0.7
console.log("querying point:", 0.7)
tree.queryPoint(0.7, function(interval) {
  console.log(interval)
})

API

var createIntervalTree = require("interval-tree-1d")

Constructor

var tree = createIntervalTree(intervals)

Constructs an interval tree given a list of intervals

Properties

tree.count

Returns the number of items in the tree

tree.intervals

Returns a list of all the intervals in the tree

tree.insert(interval)

Adds an interval to the tree

tree.remove(interval)

Removes an interval from the tree

tree.queryPoint(p, visit(interval))

Visits all intervals containing the point p

tree.queryInterval(lo, hi, visit(interval))

Returns all intervals which intersect the interval [lo, hi]

Credits

(c) 2013-2015 Mikola Lysenko. MIT License

版本列表
1.0.4 2021-06-03
1.0.3 2015-03-29
1.0.2 2015-03-28
1.0.1 2014-11-17
1.0.0 2014-04-29
0.0.1 2014-01-28
0.0.0 2013-10-16