请问用于索引的B+树的数据结构怎样序列化到文件去比较好呢?

请问用于索引的B+树的数据结构怎样序列化到文件去比较好呢?特别是里面节点的指针域怎么把它存储到硬盘文件上,并且反序列化的时候怎么恢复到内存当中?请各位大虾指点,谢谢。

作者: justincao84   发布时间: 2011-06-09

同学,指针是数据在内存中的位置,是不能下次再用的,因为不能保证那些数据下次运行还在内存的那个位置。
对于树结构,可以记录边。例如:
  A
  /\
  B C
  /\
  D E

可以记录成ABACBDBE
读取的时候每两个表示父子关系
如果每个节点数据太大,就吧节点按顺序存储,然后用他们的索引存储父子关系。例如:
5 // 表示共有5个节点
ABCDE // 分别是5个节点内容
01021314 // 表示索引对应的父子关系

作者: gogdizzy   发布时间: 2011-06-09