Sorted List Implementation Using AVL Tree Data Structure
npm install avl-sorted-list
var avlSortedList = require('avl-sorted-list');
var list = avlSortedList(function(a, b){
return a - b;
});
list.insert(1);
list.insert(5);
list.insert(5);
list.insert(9);
var arr = list.toArray();
console.log(arr);
//[1, 5, 5, 9]
var size = list.size();
console.log(size);
//4
var min = list.min();
console.log(min);
//1
var max = list.max();
console.log(max);
//9
var elem = list.at(1);
console.log(elem);
//5
var index = list.lowerBound(5);
console.log(index);
//1
index = list.upperBound(5);
console.log(index);
//3
var count = list.count(5);
console.log(count);
//2
list.remove(5);
size = list.size();
console.log(size);
//3
count = list.count(5);
console.log(count);
//1
list.removeAt(1);
size = list.size();
console.log(size);
//2
count = list.count(5);
console.log(count);
//0
npm install ###to install devDependencies library mocha and chai
npm test