可持久化数据结构 在计算机编程中可持久化数据结构Persistent data structure是一种能够在修改之后其保留历史版本即可以在保留原来数据的基础上进行修改比如增添删除赋值的数据结构这种数据结构实际上是不可变对象因为相关操作不会直接修改被保存的数据而是会在原版本上产生一个新分支这个术语是在年DriscollSarnakSleator和Tarjans的文章中提出的 如果一个数据结构包括当前版本在内的所有历史版本都可以被访问但只有当前版本可以被修改那么该数据结构就是部分可持久化数据结构如果该数据结构的所有版本都可以被查询或修改那么这种数据结构就是完全可持久化数据结构如果存在能够创建基于两个历史版本的新版本即合并两个版本 meld 浇铸混合或 merge 合并操作那么这种数据结构就是可汇合的可持久化数据结构不可持久化的数据结构被称为短暂性数据结构 这些类型的数据结构在逻辑编程和函数式编程之中非常常见