{"_id":"bintrees","_rev":"45-8fb3e7b9c8e6832f9b8878783732ff05","name":"bintrees","dist-tags":{"latest":"1.0.2"},"versions":{"0.0.1":{"name":"bintrees","version":"0.0.1","author":{"name":"Vadim Graboys","email":"dimva13@gmail.com"},"_id":"bintrees@0.0.1","maintainers":[{"name":"vadimg","email":"dimva13@gmail.com"}],"homepage":"bitfloor.com","dist":{"shasum":"675c4259dec843f60368387d83680e1025b01159","tarball":"https://registry.npmjs.org/bintrees/-/bintrees-0.0.1.tgz","integrity":"sha512-UODwl6DhajJWWNEqi03qhOoy1jB4rAItbykKpKLLB1HTwbuNN0EfRtO6I91h6JRZjd+o2eKoOSpOe8/l9WzHMA==","signatures":[{"sig":"MEUCIDn5pONJgaSLXGmuj9hkGBoD1MV3v+eDpKGQfHQ2e78aAiEAxmGDcYZLWu0Ut0wPswCyi3PfEZPe4cUis5n8UNRk++A=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/index.js","engines":{"node":"~v0.4.8"},"scripts":{"test":"expresso ./test/test_*.js"},"repository":{"url":"git://github.com/vadimg/js_bintrees.git","type":"git"},"_npmVersion":"1.0.22","description":"Binary Search Trees","directories":{"lib":"lib"},"_nodeVersion":"v0.4.8","_npmJsonOpts":{"file":"/home/vadim/.npm/bintrees/0.0.1/package/package.json","wscript":false,"serverjs":false,"contributors":false},"dependencies":{},"_defaultsLoaded":true,"devDependencies":{"expresso":">=0.8.1","underscore":">=1.1.7"},"_engineSupported":true},"0.0.2":{"name":"bintrees","version":"0.0.2","author":{"name":"Vadim Graboys","email":"dimva13@gmail.com"},"_id":"bintrees@0.0.2","maintainers":[{"name":"vadimg","email":"dimva13@gmail.com"}],"homepage":"bitfloor.com","dist":{"shasum":"6cd433cef272827071e746b99fcad23e010caa41","tarball":"https://registry.npmjs.org/bintrees/-/bintrees-0.0.2.tgz","integrity":"sha512-AJGSJJERvZDSenqjwdwjVRhOSeP/B3v5LEFzn2ZMTWfrL4QpqilP+4IH5lufXm5MTB3Tei6AaCuVrF7pix4oFg==","signatures":[{"sig":"MEUCIQCPR82AQzRwsuV0RcX6eAHRp3GVSLxPugElburSH/WUdQIgavWddk23O7yWCC5xdxOqaDGimU2aoVxQRRbr4yntajk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/index.js","engines":{"node":"~v0.4.8"},"scripts":{"test":"expresso ./test/test_*.js"},"repository":{"url":"git://github.com/vadimg/js_bintrees.git","type":"git"},"_npmVersion":"1.0.22","description":"Binary Search Trees","directories":{"lib":"lib"},"_nodeVersion":"v0.4.8","_npmJsonOpts":{"file":"/home/vadim/.npm/bintrees/0.0.2/package/package.json","wscript":false,"serverjs":false,"contributors":false},"dependencies":{},"_defaultsLoaded":true,"devDependencies":{"expresso":">=0.8.1","underscore":">=1.1.7"},"_engineSupported":true},"0.0.3":{"name":"bintrees","version":"0.0.3","author":{"name":"Vadim Graboys","email":"dimva13@gmail.com"},"_id":"bintrees@0.0.3","maintainers":[{"name":"vadimg","email":"dimva13@gmail.com"}],"homepage":"bitfloor.com","dist":{"shasum":"be22dbe52fbe0ddb062125c788843dc8676ce134","tarball":"https://registry.npmjs.org/bintrees/-/bintrees-0.0.3.tgz","integrity":"sha512-ilSjrd0mUQmCqknvGVtwficUfeFEx/YlvGH1uOPGYd4fW2VPpMvU2u4u1RSCKtt2hPq7PPHb06DwvXbVMk748g==","signatures":[{"sig":"MEQCIHplcDaAVMHJloLWJnD2GonmVXor/lHgvKJKjYfEyIR/AiAPXjGqlQPUh27lpuN5F6cL+c3gZoiKA+JDGc5LdKQUAw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/index.js","engines":{"node":"~v0.4.8"},"scripts":{"test":"expresso ./test/test_*.js"},"repository":{"url":"git://github.com/vadimg/js_bintrees.git","type":"git"},"_npmVersion":"1.0.22","description":"Binary Search Trees","directories":{"lib":"lib"},"_nodeVersion":"v0.4.8","_npmJsonOpts":{"file":"/home/vadim/.npm/bintrees/0.0.3/package/package.json","wscript":false,"serverjs":false,"contributors":false},"dependencies":{},"_defaultsLoaded":true,"devDependencies":{"expresso":">=0.8.1","underscore":">=1.1.7"},"_engineSupported":true},"0.0.4":{"name":"bintrees","version":"0.0.4","author":{"name":"Vadim Graboys","email":"dimva13@gmail.com"},"_id":"bintrees@0.0.4","maintainers":[{"name":"vadimg","email":"dimva13@gmail.com"}],"homepage":"bitfloor.com","dist":{"shasum":"11fdd9b308851fe9c76958c5db30649b9f179366","tarball":"https://registry.npmjs.org/bintrees/-/bintrees-0.0.4.tgz","integrity":"sha512-fpAl6KW9PLsLKZDHrg5PFAIvoE3f0yeBHUNtW0Espntl8d3FUX5K1tRWFg4twKjpRoP2kOu12uyw1iA8vtuB1g==","signatures":[{"sig":"MEUCIGA2tN6XK7BTWcxQLpCEGgsm+j3rqGOyZarrWaVhrFIoAiEAldsI0oJ7MbK8VaX1ICd4Ee05eB5Ebz07N+LarIZvrWE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./lib/index.js","engines":{"node":"*"},"scripts":{"test":"expresso ./test/test_*.js"},"repository":{"url":"git://github.com/vadimg/js_bintrees.git","type":"git"},"_npmVersion":"1.0.22","description":"Binary Search Trees","directories":{"lib":"lib"},"_nodeVersion":"v0.4.8","_npmJsonOpts":{"file":"/home/vadim/.npm/bintrees/0.0.4/package/package.json","wscript":false,"serverjs":false,"contributors":false},"dependencies":{},"_defaultsLoaded":true,"devDependencies":{"expresso":">=0.8.1","underscore":">=1.1.7"},"_engineSupported":true},"0.0.5":{"name":"bintrees","version":"0.0.5","author":{"name":"Vadim Graboys","email":"dimva13@gmail.com"},"_id":"bintrees@0.0.5","maintainers":[{"name":"vadimg","email":"dimva13@gmail.com"}],"homepage":"bitfloor.com","dist":{"shasum":"44818823e9c1c2e647f5e577f4683d32bf5bc6c0","tarball":"https://registry.npmjs.org/bintrees/-/bintrees-0.0.5.tgz","integrity":"sha512-yZo+ABKyX7ksh5gTQJrIXa0BeHXXJSBtJ6mzjuFITDBki1XoF1Jt0MjgJDUX7vJeLDZNZZ6rA4aZ+cKzNfdzZA==","signatures":[{"sig":"MEQCIFJX7F3CZRXsebXNbTXS8HnpXmX8f4lfdr2HpGcS/w8iAiBrldP+Xx5cyP5SfbG/CKv7kdhvK1mpCv/Isau+mGVRZg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./index.js","engines":{"node":"*"},"scripts":{"test":"./node_modules/.bin/expresso ./test/test_*.js"},"_npmUser":{"name":"vadimg","email":"dimva13@gmail.com"},"repository":{"url":"git://github.com/vadimg/js_bintrees.git","type":"git"},"_npmVersion":"1.0.103","description":"Binary Search Trees","directories":{"lib":"lib"},"_nodeVersion":"v0.5.5","dependencies":{},"_defaultsLoaded":true,"devDependencies":{"expresso":">=0.8.1","underscore":">=1.1.7"},"_engineSupported":true},"0.0.6":{"name":"bintrees","version":"0.0.6","author":{"name":"Vadim Graboys","email":"dimva13@gmail.com"},"_id":"bintrees@0.0.6","maintainers":[{"name":"vadimg","email":"dimva13@gmail.com"}],"homepage":"bitfloor.com","dist":{"shasum":"ecf4719982738bb3c377247592ce66e5bed64437","tarball":"https://registry.npmjs.org/bintrees/-/bintrees-0.0.6.tgz","integrity":"sha512-WNkURSEpcJYATlY5z3yKpzZMbi5Otk2CR5TtJITeYUoUE+PpcmEj3bC2Q5ZgJeURCokFFLpmHMx4e8qNr+qwcQ==","signatures":[{"sig":"MEUCIQCZzVe8DfWEHdCYEkIPa3NO8+cmdHJbTy88Qkl6hos6fAIgIEm6XwmKTKqnU1wktMgrKBpFS1ptoOKi7+a9t1QVySs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./index.js","engines":{"node":"*"},"scripts":{"test":"./node_modules/.bin/expresso ./test/test_*.js; ./node_modules/.bin/nodelint lib/*.js --config ./nodelint_config.js"},"_npmUser":{"name":"vadimg","email":"dimva13@gmail.com"},"repository":{"url":"git://github.com/vadimg/js_bintrees.git","type":"git"},"_npmVersion":"1.0.103","description":"Binary Search Trees","directories":{"lib":"lib"},"_nodeVersion":"v0.5.5","dependencies":{},"_defaultsLoaded":true,"devDependencies":{"expresso":">=0.8.1","nodelint":">=0.5.1","underscore":">=1.1.7"},"_engineSupported":true},"0.0.7":{"name":"bintrees","version":"0.0.7","keywords":["binary tree","red black tree","red-black tree","redblack tree"],"author":{"name":"Vadim Graboys","email":"dimva13@gmail.com"},"_id":"bintrees@0.0.7","maintainers":[{"name":"vadimg","email":"dimva13@gmail.com"}],"homepage":"bitfloor.com","dist":{"shasum":"c4949ab2d33412c284d5536d2484ebe79ee0751d","tarball":"https://registry.npmjs.org/bintrees/-/bintrees-0.0.7.tgz","integrity":"sha512-GHQgqpkRKkl8miyjh5FJ+0nXyrj7CBbqOUkgudi1XivzsPD+KkBV8W1dfyNDczuXTQNPZFrueFevONog/A6RrA==","signatures":[{"sig":"MEQCICklJanhRX5DwsM5zQotYrHIoad2O0PuEaYq/Ekxi0vzAiBsVZxpk0s4/gwNP1+aWJ13hCVcDUMPiVcgDZ7UjwzfVQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./index.js","engines":{"node":"*"},"scripts":{"test":"./node_modules/.bin/expresso ./test/test_*.js; ./node_modules/.bin/jshint lib/*.js"},"_npmUser":{"name":"vadimg","email":"dimva13@gmail.com"},"repository":{"url":"git://github.com/vadimg/js_bintrees.git","type":"git"},"_npmVersion":"1.0.103","description":"Binary Search Trees","directories":{"lib":"lib"},"_nodeVersion":"v0.5.5","dependencies":{},"_defaultsLoaded":true,"devDependencies":{"jshint":">=0.5.2","expresso":">=0.8.1","underscore":">=1.1.7"},"_engineSupported":true},"0.0.8":{"name":"bintrees","version":"0.0.8","keywords":["binary tree","red black tree","red-black tree","redblack tree"],"author":{"name":"Vadim Graboys","email":"dimva13@gmail.com"},"_id":"bintrees@0.0.8","maintainers":[{"name":"vadimg","email":"dimva13@gmail.com"}],"homepage":"bitfloor.com","dist":{"shasum":"f005f5c4c13793333410059c30401062069aa094","tarball":"https://registry.npmjs.org/bintrees/-/bintrees-0.0.8.tgz","integrity":"sha512-0EhqJx8ROB+7f5DVAoScNQmJHOLM6MkC1h4NpqIeUd3Ucv6rESsou3WUnnGRZi66WkKFwrYKNGjT7fwplOAT+Q==","signatures":[{"sig":"MEYCIQDO2D8UIxMi9CzXsYAnjUHS/jVa6xp51xlqwTQuJmpB/wIhAOb6Y0GjBTvW6y7CVLBMbDES1T34uIVkl4R+Id7z40GA","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./index.js","scripts":{"test":"nodeunit ./test/test_*.js && jshint lib/*.js index.js"},"_npmUser":{"name":"vadimg","email":"dimva13@gmail.com"},"repository":{"url":"git://github.com/vadimg/js_bintrees.git","type":"git"},"_npmVersion":"1.1.69","description":"Binary Search Trees","directories":{"lib":"lib"},"dependencies":{},"devDependencies":{"jshint":"0.5.9","reunion":"0.0.0","nodeunit":"0.7.4","underscore":"1.3.1"}},"0.0.9":{"name":"bintrees","version":"0.0.9","keywords":["binary tree","red black tree","red-black tree","redblack tree"],"author":{"name":"Vadim Graboys","email":"dimva13@gmail.com"},"_id":"bintrees@0.0.9","maintainers":[{"name":"vadimg","email":"dimva13@gmail.com"}],"dist":{"shasum":"150a24302e147318dd00436007fd51d18e9550ed","tarball":"https://registry.npmjs.org/bintrees/-/bintrees-0.0.9.tgz","integrity":"sha512-7wKk+vopfwsRr8KcTOsbasQQdeNmglYflNItgIPmWntACKlpaTimYt6YfgbzdHu/rbIDBNviXMXv0lWHZqF8cw==","signatures":[{"sig":"MEUCIQDjM80B9qnVAlZmrJiCBr/TVMe/cReH6F68dxjyKsZRygIgeIKbTeMwKBzPpOda4mRpa9C0ko2lQvwTLpvXlg6kFls=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./index.js","scripts":{"test":"nodeunit ./test/test_*.js && jshint lib/*.js index.js"},"_npmUser":{"name":"vadimg","email":"dimva13@gmail.com"},"repository":{"url":"git://github.com/vadimg/js_bintrees.git","type":"git"},"_npmVersion":"1.1.69","description":"Binary Search Trees","directories":{"lib":"lib"},"dependencies":{},"devDependencies":{"jshint":"0.5.9","reunion":"0.0.0","nodeunit":"0.7.4","underscore":"1.3.1"}},"0.0.10":{"name":"bintrees","version":"0.0.10","keywords":["binary tree","red black tree","red-black tree","redblack tree"],"author":{"name":"Vadim Graboys","email":"dimva13@gmail.com"},"_id":"bintrees@0.0.10","maintainers":[{"name":"vadimg","email":"dimva13@gmail.com"}],"dist":{"shasum":"95496cf4b6ebcd04428656310197cea86bf5e94b","tarball":"https://registry.npmjs.org/bintrees/-/bintrees-0.0.10.tgz","integrity":"sha512-BkR37mfNUjTN36dENR1V6BlW8rqzpJnqCBhe2ZtWXJ1UgTVPHIlWSfYX7Ap/FlAgl7XWRr3mG4eR2LFnezBG1g==","signatures":[{"sig":"MEUCIQD/o66MMWXaw/5H8a3RfrJTuDnydhQHRP5vJin7Y8AhnAIgbaiDr87Aj0zCa0mtKv9CWNetAEKq3xDOdW9l/LR/6hc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./index.js","scripts":{"test":"nodeunit ./test/test_*.js && jshint lib/*.js index.js"},"repository":{"url":"git://github.com/vadimg/js_bintrees.git","type":"git"},"description":"Binary Search Trees","directories":{"lib":"lib"},"dependencies":{},"devDependencies":{"jshint":"0.5.9","reunion":"0.0.0","nodeunit":"0.7.4","underscore":"1.3.1"}},"1.0.0":{"name":"bintrees","version":"1.0.0","keywords":["binary tree","red black tree","red-black tree","redblack tree"],"author":{"name":"Vadim Graboys","email":"dimva13@gmail.com"},"_id":"bintrees@1.0.0","maintainers":[{"name":"vadimg","email":"dimva13@gmail.com"}],"dist":{"shasum":"9ea09a6672c1134b5e8c4313a13e47cca968c720","tarball":"https://registry.npmjs.org/bintrees/-/bintrees-1.0.0.tgz","integrity":"sha512-WXHdxyywqAq5bIkS1pjXDaGHIsBhfm8yXCwMv44qOHDCgnUK8lFIIDHF5NhDQdBTRj2tZOeMup76/iGN9PBoUw==","signatures":[{"sig":"MEUCIQDFF3VVOwsVRPk2ITEl7xKn3CJyAGdZWUHWb6+mc8mHGwIgcvxKHKRXgRdOr02kPVxnd0f9uyoDGu6JkMZwCI95fOs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./index.js","scripts":{"test":"nodeunit ./test/test_*.js && jshint lib/*.js index.js"},"repository":{"url":"git://github.com/vadimg/js_bintrees.git","type":"git"},"description":"Binary Search Trees","directories":{"lib":"lib"},"dependencies":{},"devDependencies":{"jshint":"0.5.9","reunion":"0.0.0","nodeunit":"0.7.4","underscore":"1.3.1"}},"1.0.1":{"name":"bintrees","version":"1.0.1","keywords":["binary tree","red black tree","red-black tree","redblack tree"],"author":{"name":"Vadim Graboys","email":"dimva13@gmail.com"},"_id":"bintrees@1.0.1","maintainers":[{"name":"vadimg","email":"dimva13@gmail.com"}],"homepage":"https://github.com/vadimg/js_bintrees","bugs":{"url":"https://github.com/vadimg/js_bintrees/issues"},"dist":{"shasum":"0e655c9b9c2435eaab68bf4027226d2b55a34524","tarball":"https://registry.npmjs.org/bintrees/-/bintrees-1.0.1.tgz","integrity":"sha512-tbaUB1QpTIj4cKY8c1rvNAvEQXA+ekzHmbe4jzNfW3QWsF9GnnP/BRWyl6/qqS53heoYJ93naaFcm/jooONH8g==","signatures":[{"sig":"MEQCIEioF9HI3hly1VBG5hTzguCm0uNahrhcj9QN+b5NzRP+AiAzYqAAhsB2/KNZ7KLix8tsS00YBMYekE3Ly15wFJuBJQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./index.js","_from":".","_shasum":"0e655c9b9c2435eaab68bf4027226d2b55a34524","gitHead":"cfae7fcb27ea2550f9c6aeb81cebef6a37f7783e","scripts":{"test":"nodeunit ./test/test_*.js && jshint lib/*.js index.js"},"_npmUser":{"name":"vadimg","email":"dimva13@gmail.com"},"repository":{"url":"git://github.com/vadimg/js_bintrees.git","type":"git"},"_npmVersion":"2.7.3","description":"Binary Search Trees","directories":{"lib":"lib"},"_nodeVersion":"0.12.1","dependencies":{},"devDependencies":{"jshint":"0.5.9","reunion":"0.0.0","nodeunit":"0.9.1","underscore":"1.3.1"}},"1.0.2":{"name":"bintrees","version":"1.0.2","keywords":["binary tree","red black tree","red-black tree","redblack tree"],"author":{"name":"Vadim Graboys","email":"dimva13@gmail.com"},"license":"MIT","_id":"bintrees@1.0.2","maintainers":[{"name":"vadimg","email":"dimva13@gmail.com"}],"homepage":"https://github.com/vadimg/js_bintrees#readme","bugs":{"url":"https://github.com/vadimg/js_bintrees/issues"},"dist":{"shasum":"49f896d6e858a4a499df85c38fb399b9aff840f8","tarball":"https://registry.npmjs.org/bintrees/-/bintrees-1.0.2.tgz","integrity":"sha512-VOMgTMwjAaUG580SXn3LacVgjurrbMme7ZZNYGSSV7mmtY6QQRh0Eg3pwIcntQ77DErK1L0NxkbetjcoXzVwKw==","signatures":[{"sig":"MEYCIQClZF6nBBLgN2+WaF86ZM82MPAsvM0V71iiT66SzMl1qAIhAJKwsFYwR8Ai89xx1b/7l644YCKZRo+vg3Un4TqXyDYf","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"./index.js","_from":".","_shasum":"49f896d6e858a4a499df85c38fb399b9aff840f8","gitHead":"b36d344bd4f782e91e1eeafb4d00b0908b1b251c","scripts":{"test":"nodeunit ./test/test_*.js && jshint lib/*.js index.js"},"_npmUser":{"name":"vadimg","email":"dimva13@gmail.com"},"repository":{"url":"git://github.com/vadimg/js_bintrees.git","type":"git"},"_npmVersion":"2.14.7","description":"Binary Search Trees","directories":{"lib":"lib"},"_nodeVersion":"4.2.2","dependencies":{},"devDependencies":{"jshint":"0.5.9","reunion":"0.0.0","nodeunit":"0.9.1","underscore":"1.3.1"},"_npmOperationalInternal":{"tmp":"tmp/bintrees-1.0.2.tgz_1501960116111_0.66587526910007","host":"s3://npm-registry-packages"}}},"time":{"created":"2011-08-03T05:41:59.829Z","modified":"2025-02-13T01:33:55.851Z","0.0.1":"2011-08-03T05:42:00.218Z","0.0.2":"2011-08-03T06:06:46.616Z","0.0.3":"2011-08-03T06:13:16.355Z","0.0.4":"2011-08-03T19:07:09.965Z","0.0.5":"2011-10-28T20:11:04.278Z","0.0.6":"2011-10-28T21:34:36.180Z","0.0.7":"2011-10-28T22:25:01.394Z","0.0.8":"2012-12-22T18:21:28.379Z","0.0.9":"2012-12-22T18:33:02.769Z","0.0.10":"2013-04-21T14:22:22.729Z","1.0.0":"2013-04-27T17:00:09.938Z","1.0.1":"2015-07-24T09:50:18.982Z","1.0.2":"2017-08-05T19:08:36.407Z"},"bugs":{"url":"https://github.com/vadimg/js_bintrees/issues"},"author":{"name":"Vadim Graboys","email":"dimva13@gmail.com"},"license":"MIT","homepage":"https://github.com/vadimg/js_bintrees#readme","keywords":["binary tree","red black tree","red-black tree","redblack tree"],"repository":{"url":"git://github.com/vadimg/js_bintrees.git","type":"git"},"description":"Binary Search Trees","maintainers":[{"name":"vadimg","email":"dimva13@gmail.com"}],"readme":"Binary Trees [![Build Status](https://secure.travis-ci.org/vadimg/js_bintrees.png?branch=master)](http://travis-ci.org/vadimg/js_bintrees)\n============\n\nThis package provides Binary and Red-Black Search Trees written in Javascript. It is released under the MIT License.\n\nBinary Search Trees are a good way to store data in sorted order. A Red-Black tree is a variation of a Binary Tree that balances itself.\n\nAlgorithms were taken from Julienne Walker: http://eternallyconfuzzled.com/jsw_home.aspx\n\nTrees\n------------\n\n* BinTree - Binary Search Tree\n* RBTree - Red-Black Tree\n\nQuickstart\n------------\nnode.js:\n\n```\nnpm install bintrees\n```\n\n```javascript\nvar RBTree = require('bintrees').RBTree;\n\nvar tree = new RBTree(function(a, b) { return a - b; });\n\ntree.insert(2);\ntree.insert(-3);\n```\n\nsee examples/node.js for more info\n\nIn the browser:\n\n```html\n<script src=\"/path/to/rbtree.js\"></script>\n<script>\n    var tree = new RBTree(function(a, b) { return a - b; });\n    tree.insert(0);\n    tree.insert(1);\n</script>\n```\n\nsee examples/client.html for more info\n\nConstructor\n------------\n\nRequires 1 argument: a comparator function f(a,b) which returns:\n* 0 if a == b\n* >0 if a > b\n* <0 if a < b\n\nMethods\n------------\n\n### insert(item)\n> Inserts the item into the tree. Returns true if inserted, false if duplicate.\n\n### remove(item)\n> Removes the item from the tree. Returns true if removed, false if not found.\n\n### size\n> Number of nodes in the tree.\n\n### clear()\n> Removes all nodes from the tree.\n\n### find(item)\n> Returns node data if found, null otherwise.\n\n### findIter(item)\n> Returns an iterator to the node if found, null otherwise.\n\n### lowerBound(item)\n> Returns an iterator to the tree node at or immediately after the item. Returns null-iterator if tree is empty.\n>> __NOTE: Changed in version 1.0.0 to match C++ lower_bound__\n\n### upperBound(item)\n> Returns an iterator to the tree node immediately after the item. Returns null-iterator if tree is empty.\n>> __NOTE: Changed in version 1.0.0 to match C++ upper_bound__\n\n### min()\n> Returns the min node data in the tree, or null if the tree is empty.\n\n### max()\n> Returns the max node data in the tree, or null if the tree is empty.\n\n### each(f)\n> Calls f on each node's data, in order.\n\n### reach(f)\n> Calls f on each node's data, in reverse order.\n\n### iterator()\n> Returns a null-iterator. See __Iterators__ section below.\n\nIterators\n------------\n\ntree.iterator() will return a null-iterator. On a null iterator,\n* next() will return the first element in the tree\n* prev() will return the last element in the tree\n\nOtherwise,\n* next() will return the next element\n* prev() will return the previous element\n* data() will return the node the iterator is pointing to\n\nWhen iteration reaches the end, the iterator becomes a null-iterator again.\n\nForward iteration example:\n\n```javascript\nvar it=tree.iterator(), item;\nwhile((item = it.next()) !== null) {\n    // do stuff with item\n}\n```\n\nIf you are iterating forward through the tree, you can always call prev() to go back, and vice versa.\n\n__NOTE:__ iterators become invalid when you add or remove elements from the tree.\n\n## Production Usage\n\n* [Coinbase Exchange](https://exchange.coinbase.com/), since Jan 26, 2015.\n* If you are using this in production, please let me know! (add your company to this README in a pull request)\n","readmeFilename":"README.md","users":{"steel1990":true}}