1d-range-query
Version:
Efficient range maximum/minimum query
46 lines (29 loc) • 1.27 kB
Markdown
# 1d-range-query
[](https://travis-ci.org/SummerWish/1d-range-query)
[](https://coveralls.io/github/SummerWish/1d-range-query?branch=master)
[](https://david-dm.org/SummerWish/1d-range-query)
[](https://npmjs.org/package/1d-range-query "View this project on npm")
[](http://opensource.org/licenses/MIT)
Efficient range maximum/minimum query.
```bash
npm install 1d-range-query
```
## Usage
```js
import rangeQuery from '1d-range-query';
const query = rangeQuery([1,5,10,2,5,3]);
console.log(query.max(0, 2)); // => 10 (10 is the max in [1,5,10])
console.log(query.min(2, 4)); // => 2 (2 is the min in [10,2,5])
```
### \#query.max(from, to)
Query the maximum value in range `[from, to]`.
### \#query.min(from, to)
Query the minimum value in range `[from, to]`.
## Complexity
### Time
Initialize: O(nlogn)
Query: O(1)
### Space
O(nlogn)
## License
MIT