基数排序用于后缀排序吗?

| 我正在尝试实现块排序。这是来自Burrows Wheeler的论文。 (在此步骤之前,创建一个S的V后缀数组) Q4。 [基数排序] 使用每个后缀的前两个字符作为V的元素排序 排序键。使用基数排序可以有效地完成此操作。 因此,我了解您正在使用基数排序对后缀进行排序。 这应该如何更新阵列V?只有在完成基数排序后,我才能知道后缀的排序位置。假设第四个后缀以排序后的第一个结尾。因此V [0] = i。在这种情况下,我们知道(因为我告诉过你)i =4。但是由于我们没有跟踪它们的位置,因此算法如何知道这一点。我是否应该制作一个既包含后缀又包含其后缀编号的类?     
已邀请:
        快速阅读后;我认为Burrows-Wheeler有一个错误,是说要使用数组V对W的元素进行排序以跟踪和映射W的元素的最终位置。这样W不变,而V包含索引的排序列表。 从那时起,本文似乎将V视为指向W中元素的指针数组。 查阅http://michael.dipperstein.com/bwt/在页面底部有一个很好的描述以及该算法的源代码。     

要回复问题请先登录注册