Java 将已排序的子列表合并到已排序的超列表
我有一个n个排序列表,每个列表有m个元素字符串。这些元素来自一个我不知道的顺序不同的列表。我所知道的是,所有子列表都维护元素的全局顺序。这些列表不是不相交的。列表的并集是原始列表的子集 现在,我正在努力寻找一种算法,能够有效地将它们重新组合成一个列表,并具有最大的排序精度 有没有解决这个问题的办法 我正在使用Java,下面是一些示例代码:Java 将已排序的子列表合并到已排序的超列表,java,algorithm,list,sorting,sortedlist,Java,Algorithm,List,Sorting,Sortedlist,我有一个n个排序列表,每个列表有m个元素字符串。这些元素来自一个我不知道的顺序不同的列表。我所知道的是,所有子列表都维护元素的全局顺序。这些列表不是不相交的。列表的并集是原始列表的子集 现在,我正在努力寻找一种算法,能够有效地将它们重新组合成一个列表,并具有最大的排序精度 有没有解决这个问题的办法 我正在使用Java,下面是一些示例代码: List<List<String>> elements = new ArrayList<>(); elements.ad
List<List<String>> elements = new ArrayList<>();
elements.add(Lists.newArrayList("A","D","F"));
elements.add(Lists.newArrayList("B","D","E"));
elements.add(Lists.newArrayList("A","B","G"));
elements.add(Lists.newArrayList("C","D","H"));
// the required method
List<List<String>> sorted = sortElements(elements);
/* expeced output:
* [["A"],["B"],["C"],["D"],["G","F","E","H"]]
*/
你正在寻找的是什么
初始列表表示有向图弧A->D、D->F等
附言。
在俄罗斯文献Demoucron算法中称为一种特殊的拓扑排序,以明确地按级别划分节点,但我未能找到合适的英文描述,找到了平面图绘图文章的链接
其工作实例:
你正在寻找的是什么
初始列表表示有向图弧A->D、D->F等
附言。
在俄罗斯文献Demoucron算法中称为一种特殊的拓扑排序,以明确地按级别划分节点,但我未能找到合适的英文描述,找到了平面图绘图文章的链接
其工作实例: