哈希表没有';t在Lisp中保留插入顺序
我意识到,当我在lisp中创建一个哈希表时,它并没有保留插入顺序,但有点随机。你知道原因是什么吗?我需要它来保持顺序。哈希表数据结构不能保证其键的顺序。与其他语言和语言族一样,Lisps也是如此。(c.f.)哈希表没有';t在Lisp中保留插入顺序,lisp,Lisp,我意识到,当我在lisp中创建一个哈希表时,它并没有保留插入顺序,但有点随机。你知道原因是什么吗?我需要它来保持顺序。哈希表数据结构不能保证其键的顺序。与其他语言和语言族一样,Lisps也是如此。(c.f.) 也许您可以重述您的问题来解释为什么您需要(接近)固定时间的哈希表插入和查找,但对键有顺序约束。可能还有另一种数据结构更适合您的用途。哈希表数据结构不能保证其键的顺序。与其他语言和语言族一样,Lisps也是如此。(c.f.) 也许您可以重述您的问题来解释为什么您需要(接近)固定时间的哈希表插
也许您可以重述您的问题来解释为什么您需要(接近)固定时间的哈希表插入和查找,但对键有顺序约束。可能还有另一种数据结构更适合您的用途。哈希表数据结构不能保证其键的顺序。与其他语言和语言族一样,Lisps也是如此。(c.f.)
也许您可以重述您的问题来解释为什么您需要(接近)固定时间的哈希表插入和查找,但对键有顺序约束。可能还有另一种数据结构更适合您的用途。我对lisp一无所知,但哈希表的要点是哈希函数确定元素在数组中的位置。它从不维持秩序。为什么你不能用一个列表?你能澄清一下你说的是哪一个“口齿不清”吗?通用口齿不清?计划?Clojure?在Java中,LinkedHashMap就是这样一种数据结构。您需要在一些库中找到Lisp等价物或定义自己的。默认情况下,Lisp通常不提供这一点,因为保持条目的顺序需要额外的努力来维护一个哈希表。我对Lisp一无所知,但哈希表的要点是哈希函数确定元素在数组中的位置。它从不维持秩序。为什么你不能用一个列表?你能澄清一下你说的是哪一个“口齿不清”吗?通用口齿不清?计划?Clojure?在Java中,LinkedHashMap就是这样一种数据结构。您需要在一些库中找到Lisp等价物或定义自己的。默认情况下,Lisp通常不提供这一功能,因为保持条目的顺序需要额外的工作来维护哈希表。