각각 m 개의 요소 (문자열)가있는 n 개의 정렬 된 목록의 목록이 있습니다. 이러한 요소는 내가 모르는 별개의 순서로 List에서 유래했습니다. 내가 아는 것은 모든 하위 목록이 요소의 전역 질서를 유지한다는 것입니다. 목록은 분리되어 있지 않습니다. 목록의 합집합은 원래 목록의 하위 집합입니다.정렬 된 하위 목록을 정렬 된 수퍼리스트에 병합
지금 나는 최대 정렬 정확도를 가진 목록 (목록)으로 효율적으로 다시 결합하는 알고리즘을 찾기 위해 고심하고 있습니다.
이러한 문제에 대한 해결 방법이 있습니까?
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"]]
*/