{"_id":"binaryheap","_rev":"324983","name":"binaryheap","description":"A simple binary heap","dist-tags":{"latest":"0.0.3"},"maintainers":[{"name":"tjfontaine","email":""}],"time":{"modified":"2021-06-04T02:14:55.000Z","created":"2012-09-19T23:59:49.033Z","0.0.3":"2013-03-24T23:41:10.707Z","0.0.2":"2012-12-28T00:53:53.631Z","0.0.1":"2012-09-19T23:59:49.033Z"},"users":{},"author":{"name":"Timothy J Fontaine","email":"tjfontaine@gmail.com","url":"http://atxconsulting.com"},"repository":{"type":"git","url":"http://github.com/tjfontaine/node-binaryheap.git"},"versions":{"0.0.3":{"name":"binaryheap","version":"0.0.3","author":{"name":"Timothy J Fontaine","email":"tjfontaine@gmail.com","url":"http://atxconsulting.com"},"description":"A simple binary heap","keywords":["balanced","binary","heap","minheap","maxheap"],"homepage":"http://github.com/tjfontaine/node-binaryheap","bugs":{"url":"http://github.com/tjfontaine/node-binaryheap/issues"},"repository":{"type":"git","url":"http://github.com/tjfontaine/node-binaryheap.git"},"main":"binaryheap.js","engines":{"node":">= 0.6.0"},"scripts":{"test":"node test"},"devDependencies":{"tap":">= 0.4.0"},"readmeFilename":"README.md","_id":"binaryheap@0.0.3","dist":{"shasum":"0d6136c84e9f1a5a90c0b97178c3e00df59820d6","size":3924,"noattachment":false,"key":"/binaryheap/-/binaryheap-0.0.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/binaryheap/download/binaryheap-0.0.3.tgz"},"_from":".","_npmVersion":"1.2.14","_npmUser":{"name":"tjfontaine","email":"tjfontaine@gmail.com"},"maintainers":[{"name":"tjfontaine","email":""}],"directories":{},"publish_time":1364168470707,"_cnpm_publish_time":1364168470707,"_hasShrinkwrap":false},"0.0.2":{"name":"binaryheap","version":"0.0.2","author":{"name":"Timothy J Fontaine","email":"tjfontaine@gmail.com","url":"http://atxconsulting.com"},"description":"A simple binary heap","keywords":["balanced","binary","heap","minheap","maxheap"],"homepage":"http://github.com/tjfontaine/node-binaryheap","bugs":{"url":"http://github.com/tjfontaine/node-binaryheap/issues"},"repository":{"type":"git","url":"http://github.com/tjfontaine/node-binaryheap.git"},"main":"binaryheap.js","engines":{"node":">= 0.6.0"},"readmeFilename":"README.md","_id":"binaryheap@0.0.2","dist":{"shasum":"78daba867acdb8f90f2e345c1045afc05520468c","size":2877,"noattachment":false,"key":"/binaryheap/-/binaryheap-0.0.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/binaryheap/download/binaryheap-0.0.2.tgz"},"_npmVersion":"1.1.69","_npmUser":{"name":"tjfontaine","email":"tjfontaine@gmail.com"},"maintainers":[{"name":"tjfontaine","email":""}],"directories":{},"publish_time":1356656033631,"_cnpm_publish_time":1356656033631,"_hasShrinkwrap":false},"0.0.1":{"name":"binaryheap","version":"0.0.1","author":{"name":"Timothy J Fontaine","email":"tjfontaine@gmail.com","url":"http://atxconsulting.com"},"description":"A simple binary heap","keywords":["balanced","binary","heap","minheap","maxheap"],"homepage":"http://github.com/tjfontaine/node-binaryheap","bugs":{"url":"http://github.com/tjfontaine/node-binaryheap/issues"},"repository":{"type":"git","url":"http://github.com/tjfontaine/node-binaryheap.git"},"main":"binaryheap.js","engines":{"node":">= 0.6.0"},"_id":"binaryheap@0.0.1","dist":{"shasum":"b512028e0f9c55fc1825ba0b788e74e356815b5a","size":2841,"noattachment":false,"key":"/binaryheap/-/binaryheap-0.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/binaryheap/download/binaryheap-0.0.1.tgz"},"_npmVersion":"1.1.59","_npmUser":{"name":"tjfontaine","email":"tjfontaine@gmail.com"},"maintainers":[{"name":"tjfontaine","email":""}],"directories":{},"publish_time":1348099189033,"_cnpm_publish_time":1348099189033,"_hasShrinkwrap":false}},"readme":"BinaryHeap\n==========\n\nBasic binary heap tree using linked lists\n\nUsage\n-----\n\n```javascript\nvar BinaryHeap = require('binaryheap');\nvar heap = new BinaryHeap();\n\nvar a = [6, 5, 3, 1, 8, 7, 2, 4];\n\na.forEach(function (k) {\n  heap.insert({ value: k }, k);\n});\n\nheap.print();\n\nwhile (heap.length) {\n  console.log('popping', heap.pop().value);\n}\n```\n\nBy default it stores as a max-heap, if you pass truthy to the constructor though\nit will behave as a min-heap.\n\nMethods\n-------\n\n * `insert(obj, key)` -- obj can be any new or existing object, and key is any\nvalue that behaves sanely with `>` or `<`\n * `pop()` -- removes and returns the maximum or minimum object from the root\nof the heap\n * `remove(obj)` -- removes a previously inserted object from the heap\n * `print()` -- mostly for debugging purposes prints a graphviz dot style\ndigraph to confirm ordering\n\nMembers\n-------\n\n * `length` -- number of objects currently in the heap\n","_attachments":{},"readmeFilename":"README.md","homepage":"http://github.com/tjfontaine/node-binaryheap","bugs":{"url":"http://github.com/tjfontaine/node-binaryheap/issues"}}