小编典典

Javascript数据结构库

algorithm

我想请求JavaScript库/库的推荐,该库提供一些基本数据结构的实现,例如优先级队列,具有任意键的映射,尝试,图形等,以及对它们进行操作的一些算法。

我最感兴趣的是:

  • 涵盖的功能集,
  • 解决方案的灵活性-这主要适用于图形。例如,我是否必须使用提供的图形实现,
  • 使用语言的功能特性-有时它还会提供更大的灵活性,
  • 执行绩效

我想指出的是,我知道可以使用JavaScript来实现以下数据结构:

  • 映射,如果键值是字符串或数字,
  • 一组(使用地图实现),
  • 队列,尽管如下所述,但在某些浏览器中效率低下,

目前,我对优先级队列(不要与常规队列混淆)最感兴趣,这些图形实现对输入图的格式不是很麻烦。例如,他们可以使用回调遍历图的结构,而不是使用固定名称访问某些具体属性。


阅读 493

收藏
2020-07-28

共1个答案

小编典典

我建议使用Closure库(尤其是Closure编译器)。

在这里,您有一个具有数据结构goog.structs的库。该库包含:

goog.structs.AvlTree
goog.structs.CircularBuffer
goog.structs.Heap
goog.structs.InversionMap
goog.structs.LinkedMap
goog.structs.Map
goog.structs.PriorityQueue
goog.structs.Set

例如,您可以使用单元测试:goog.structs.PriorityQueueTest

如果您需要处理数组,那么还有一个数组库:goog.array

如评论中所述,源已移至github.com/google/closure,文档的新位置为:google.github.io/closure-
library

2020-07-28