• 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏吧

标签:bidirectional

bidirectional

单链表的双向迭代

单链表的双向迭代
我目前正在学习数据结构考试,并且遇到了有关迭代的问题。 是否可以在单链列表上实现双向迭代器?如果是这样,将如何实施呢? 我有一个想法,首先向前遍历链表,然后存储一个临时链表,该链表将节点保持在相反的方向。但是遍历此临时列表将导致迭代器仅允许向后遍历。 解决方案如下: 此答案假定该列表必须始终保持单链接: 您只需要一个指向第一个元素的指针和一个指向当前……继续阅读 »

bidirectional

Java密钥-密钥映射

Java密钥-密钥映射
我需要一种可以从两个方向访问的 map ,因此要使用键-键结构而不是键-值。 Java中是否存在?如果没有,创建它的最佳方法是什么? 这样的例子: mySpecialHashMap.put("key1", "key2"); mySpecialMap.getL2R("key1") returns "key2"; mySpecialMap.getR2L("ke……继续阅读 »

bidirectional

Java是否具有带有反向查找的HashMap?

Java是否具有带有反向查找的HashMap?
我有以“键-键”格式而不是“键-值”格式组织的数据。这就像一个HashMap,但是我将需要在两个方向上进行O(1)查找。这类数据结构有名称吗,Java的标准库中是否包含类似的名称? (或者Apache Commons?) 我可以编写自己的类,该类基本上使用两个镜像的Map,但我不想重蹈覆辙(如果已经存在,但我只是没有在寻找正确的术语)。 解决方案如下: ……继续阅读 »

bidirectional

双向多图等效数据结构

双向多图等效数据结构
我知道Guava内部具有BiMultimap类,但没有将代码外包。我需要一个双向的数据结构,即按键和按值查找并接受重复数据。 即类似这样的内容:(在我的情况下,值是唯一的,但是两个值可以指向同一个键) 0 <-> 5 1 <-> 10 2 <-> 7 2 <-> 8 3 <-> 11 我希望能够 ……继续阅读 »