container-sortedlist
SortedList implementation in Javascript
To manage a sorted list of elements. Best use case: elements are frequently removed from the list or the property on which they are sorted can slightly change. Complexity in O(1) for removal. (For list sizes above a few hundreads elements, consider using an avl tree instead, such as container-avltree).
Note: Benchmarks seem to show that list iteration is as fast as array iteration on all major browsers.
To instantiate a new list:
// In this example, myList will hold elements sorted by zIndex{return azIndex - bzIndex;}var myList = myComparisonFunction;
To add an element:
var myObjectReference = myList;
To remove an element:
myList; // O(1)// ormyList; // O(n)
To reposition an element:
myList;
To move an element to the beginning of the list:
myList;
To move an element to the end of the list:
myList;
To iterate through the elements, in sorted order:
for var node = myListfirst; node !== null; node = nodenextconsole;
To apply a treatment on all the elements in sorted ordered:
myList;
To apply a treatment on all the elements in opposite sorted ordered:
myList;
To convert into an array:
var myArray = myList;