始终归并两个最小的叶子节点,将归并后的节点看作新的叶子节点
WPL 路径长度和节点的值 磁盘I/O次数
多路归并时虚设长度为0的段
k路归并的最佳归并树一定是一颗严格的k叉树
树中只包含度为0的节点和度为k的节点
设度为k的节点有nk个
度为0的节点有n0个
节点总数为n个
则 初始归并段数量 + 虚段数量 = n0
n = n0 + nk
k nk = n - 1(减去的是根节点,因为根节点入度为0,其余节点入读均为1)
nk = (n0 - 1)/(k - 1)
8路归并 初始归并段 = 19
n0 - 1 = 19 - 1 = 18
u = (n0 - 1) % (k - 1) = 18 % (8 - 1) = 4
需要补充k - 1 - u = 8 - 1 - 4 = 3个虚段
k叉归并树的最佳归并树一定是严格k叉树,即树中只有度为k的节点和度为0的节点(非叶子节点度为k)