列出所有简约反转序列:新算法与新视角
1. 现有ASSR方法框架
假设我们要对一个排列 π 进行排序,其反转距离为 d(π)。一个 i - 解是 ASSR 问题的部分解,代表长度为 i 的最小排序序列。i - 层是所有 i - 解的集合,所以 i - 层中的每个 i - 解都会生成一个距离等于 d(π) - i 的排列。
解决 ASSR 问题的现有框架反复应用 Siepel 的 O(n³) ASR 算法,这个框架(ASSR - FW)流程如下:
1. 生成 (i + 1) - 解集合 :
- 对与 i - 解对应的排列应用 Siepel 的 ASR 算法,生成接下来的 O(n²) 个排序反转。
- 将每个排序反转附加到 i - 解上,生成 O(n²) 个 (i + 1) - 解的列表。
2. 将 (i + 1) - 解添加到 (i + 1) - 层 :
重复这两个步骤,直到获得所有 d(π) - 解。
下面是该流程的 mermaid 流程图:
graph TD;
A[开始] --> B[选择 i - 解];
B --> C[应用 Siepel 的 ASR 算法];
C --> D[生成 (i + 1) - 解];
D --> E[添加到 (i + 1) - 层];
E --> F{i < d(π)?};
F -- 是 --> B;
F -- 否 --> G[结束];
</
订阅专栏 解锁全文
321

被折叠的 条评论
为什么被折叠?



