
Security News
Browserslist-rs Gets Major Refactor, Cutting Binary Size by Over 1MB
Browserslist-rs now uses static data to reduce binary size by over 1MB, improving memory use and performance for Rust-based frontend tools.
A javascript binary heap implementation for Node.js and browser with browserify.
$ npm install bheap
var BinaryHeap = require('bheap')
var heap = new BinaryHeap(function(a, b) {
return a.cash - b.cash;
})
heap.push({ cash: 250, name: 'Valentina' })
heap.push({ cash: 300, name: 'Jano' })
heap.push({ cash: 150, name: 'Fran' )
heap.size // 3
heap.top() // { cash: 300, name: 'Jano' }
heap.pop() // { cash: 300, name: 'Jano' }
heap.size // 2
It creates a new instance of BinaryHeap
based on its parameters.
Time complexity: O(n) such that n === array.length
Elements that are inserted in binary heap.
a
is great than b
a
is less than b
a
is equal to b
It is a function that binary heap uses internally to sort its elements.
It is default comparator if any is passed to constructor and compares two Number
or String
objects. It is static property of BinaryHeap
.
The size of the binary heap.
Time complexity: O(1)
BinaryHeap
Gets the top element of the binary heap.
Throws an Error
when the heap is empty.
Time complexity: O(1)
BinaryHeap
Pops the top element of instance of binary heap.
Throws an Error
when the heap is empty.
Time complexity: O(log(n)) such that n === this.size
Push the element
at the binary heap and returns its new size.
Time complexity: O(log(n)) such that n === this.size
Sets a new binary heap based on elements of array
and keeps the same comparator.
Time complexity: O(n) such that n === array.length
size
and not length?I wanted to keep the ECMAScript 6 conventions.
pop
or top
throw an error when binary heap is empty?I preferred intuitive API for javascript developers. Thus, I wanted to keep the same behaviour that other data structures as Array which doesn't throw an error when is empty and method pop
is called.
$ npm test
MIT
FAQs
a javascript binary heap implementation
The npm package bheap receives a total of 8 weekly downloads. As such, bheap popularity was classified as not popular.
We found that bheap demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Browserslist-rs now uses static data to reduce binary size by over 1MB, improving memory use and performance for Rust-based frontend tools.
Research
Security News
Eight new malicious Firefox extensions impersonate games, steal OAuth tokens, hijack sessions, and exploit browser permissions to spy on users.
Security News
The official Go SDK for the Model Context Protocol is in development, with a stable, production-ready release expected by August 2025.