题① 文件处理中的一个常见算法是合并两个按键值排序的顺序文件,产生一个新的顺序文件,也是按键值排序的。如果每个文件在结尾处都有一个虚拟的记录,该虚拟记录具有比文件中任何键值都大的唯一的键值,那么合并算法可以变得非常简单。这唯一的键值被称为哨兵。在这假想的情况下,就没有必要去检查文件的EOF标识。画出在这种情况下合并两文件的UML图。
题② 用伪码写出题①的算法。
题③ 如果两个文件有题①所讨论的哨兵值,画出基于事务文件更新一个顺序文件的UML图。
题④ 用伪码写出题③的算法。
题⑤ 如果在处理过程中我们能人工建立哨兵,那么题①中假想的情况就可以被应用到真实的情况中(文件带有一个EOF标识)。画出合并两个带有EOF标识而不是哨兵的顺序文件的UML图。
题⑥ 用伪码写出题⑤的算法。
题⑦ 如果两个文件使用EOF标识而不是哨兵,画出基于事务文件更新顺序文件的UML图。使用题⑤中的概念。
题⑧ 用伪码写出题⑦的算法。