复制稳定 sortKey 的概念
Concept of a replication-stable sortKey
我正在寻找 material 报道这个想法:
给定一个类似列表的数据结构(例如数据库 table),应该引入 sortKey 属性(列)
- 反映所需的排序顺序 (ORDER BY sortKey)
- 在列表中是唯一的
- 可以在(排序的)列表中的任何位置插入内容
- 免疫table
要求 1-3 可以通过整数 sortKey 实现,其中每次插入时,所有元素都可能被分配一个新的 sortKey。
要求 1-4 可以通过 tree'ish sortKey 来实现,例如十进制类型范围 (0.0, 1.0);每个插入都会读取其前身和后继的 sortKey 并使用 sortKey(newItem) = ( sortKey(left) + sortKey(right) ) / 2
这个 problem/solution 是否有通用术语,我可以查找或者有人可以指点我文学作品。
谢谢!
并没有真正满足所有这些要求的好的解决方案。 (3) + (4) 要求密钥长度可变,对手总能找到使密钥长度与插入的密钥数量成正比的插入序列。
问题称为 "online list labeling problem" 或 "order maintenance problem",google 搜索这些术语会发现各种折衷方案,这些折衷方案可能对您有用,也可能对您没有用。
我正在寻找 material 报道这个想法:
给定一个类似列表的数据结构(例如数据库 table),应该引入 sortKey 属性(列)
- 反映所需的排序顺序 (ORDER BY sortKey)
- 在列表中是唯一的
- 可以在(排序的)列表中的任何位置插入内容
- 免疫table
要求 1-3 可以通过整数 sortKey 实现,其中每次插入时,所有元素都可能被分配一个新的 sortKey。
要求 1-4 可以通过 tree'ish sortKey 来实现,例如十进制类型范围 (0.0, 1.0);每个插入都会读取其前身和后继的 sortKey 并使用 sortKey(newItem) = ( sortKey(left) + sortKey(right) ) / 2
这个 problem/solution 是否有通用术语,我可以查找或者有人可以指点我文学作品。
谢谢!
并没有真正满足所有这些要求的好的解决方案。 (3) + (4) 要求密钥长度可变,对手总能找到使密钥长度与插入的密钥数量成正比的插入序列。
问题称为 "online list labeling problem" 或 "order maintenance problem",google 搜索这些术语会发现各种折衷方案,这些折衷方案可能对您有用,也可能对您没有用。