2010-11-17 2 views
6

Где я могу найти готовый к использованию? Или, если на то пошло, хорошая коллекция «стандартных» структур данных, если вы знаете что-нибудь?Javascript: требуется приличная реализация красного черного дерева

+0

Зачем вам нужно красно-черное дерево, когда литералы объектов javascript делают то же самое и, вероятно, реализованы как красно-черное дерево в C в любом случае? (также может быть реализована как хэш-таблица, которая будет иметь схожие характеристики). – slebetman

+2

Чтобы быть немного педантичным: красно-черные деревья гарантировали поведение журнала, даже в худшем случае, но таблицы хэша не обеспечивают эту гарантию. Еще одно отличие состоит в том, что красно-черные деревья могут быть созданы для функциональной работы, что может быть полезно в зависимости от приложения. – dyoo

ответ

1

Быстрая проверка о»межсетях появился готовый к использованию реализации Кевина Lindsey (прокрутите вниз до красно-черных деревьев):

KevLinDev - Utilities

К сожалению, я не знаю о сайт с хранилищем готовых сложных структур данных.

Я предполагаю, что они немного редки, так как люди редко используют JavaScript для такого тяжелого подъема, что потребовало бы таких сложных структур ... но я мог ошибаться.

+0

Мне интересно, почему они редки, хотя, учитывая, насколько вездесущий Javascript вообще ... – Hamster

+3

Эта реализация на самом деле является AVL-Tree и ошибочно представлена ​​как Red-Black-tree! Тем не менее O (log n). – smilingthax

12

Я написал красно-черное дерево в JavaScript, доступно здесь: https://github.com/vadimg/js_bintrees или bintrees в НОМ. В отличие от других реализаций, он имеет модульные тесты.

Смежные вопросы