ChainList.js双向链表容器的高效导航
在ChainList.js中,当元素需要快速访问其同级和/或其父容器或关联的父元素时,请使用此容器类型。因此,它的可导航性与DOM非常相似。它被实现为一个双向链表,导航n个元素需要O(n)时间。此外,还可以快速(O(1))访问父列表、最后一个元素和元素计数。列表(ChainList)及其节点(ChainList.Node)都继承自ChainList.Link。具体元素可以从ChainList.Node继承,也可以通过将自身作为参数传递来聚合它(参见图中虚线“elem”)。同样,具体容器可以从ChainList继承或聚合它(参见图中虚线“父”)。某些函数,例如“indexLink”、“nextLink”和“prevLink”,会遍历所有链接。此外,还有一种称为ChainListSorted的ChainList的排序变体,它没有unshift。
下载地址
用户评论