functional-programming - 高效的不可变 map 实现?

标签 functional-programming map immutability performance

我想知道是否有一个 map 的实现是:

  • 不变,以便我可以在
    函数式编程,以及
    毫不费力地确保交易和并发。
  • 快速。我已经 checkout Binary
    搜索树(RB,AVL)和尝试,但是
    他们似乎都不如
    哈希表。有 map 吗
    支持固定时间的实现
    用于更新和检索? (或至少非常快的对数时间)

  • 简而言之,是否存在可以与哈希图进行性能比较的功能性数据结构?

    最佳答案

    Clojure具有不变的 map 。 (link)。不知道它正在使用什么基础数据结构。 Clojure源代码将为您提供更多信息!

    关于functional-programming - 高效的不可变 map 实现?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1304031/

    相关文章:

    scala - 如何获取 map 的子集?

    java - 在 Java 中定义我自己的不可变数组

    function - 对常量值使用def vs. val有什么含义

    java - 如何使用 Java 8/stream API 列出、映射和 "print if count>0"?

    data-structures - 缺点有什么优点?

    c++ - 在 C++ 中更新 map 值

    jquery - 尝试从jquery对象获取类名称时出现语法错误

    c++ - 关于不可变[string]对象的问题和验证C++

    function - PL/SQL 将函数作为参数传递

    functional-programming - 函数式编程 : how far should immutability go?