对圆圈上的字符串进行排序

时间:2017-10-31 19:48:09

标签: python algorithm sorting

我有一个字符串列表,如“AAAA”,“BAAA”,“BBAA”,“BBBA”,“BBBAA”等。(实际上它们是更长,更复杂的字符串)我想对它们进行排序圈。圆上的所有字符串都是固定的编辑距离,通过替换或插入(例如L)来自某个参考字符串(不在列表中),但彼此之间的距离最多可达2L。

我想组织这个圆圈上的字符串,使得序列按照它们彼此的距离进行排序。意味着圆上更近的点(以弧度表示),具有较小的编辑距离,具有较高的概率。这样做的最佳方法是什么? (任意输入都不能完美排序)。我认为插入排序可能是最好的方法。

注意:这不是关于转换为径向坐标,我的问题是关于点的顺序。圆上的最后一个点将与第一个点相邻,因此使用圆上的某个点作为参考的简单距离排序不是我正在寻找的。

0 个答案:

没有答案