Представьте, что у меня есть древовидный граф, как показано ниже, где у узла может быть несколько дочерних элементов и т. Д. (У узла может быть только 1 родительский элемент). Если у меня есть список путей вдоль этого графика, как я могу найти подмножество этих путей, которые являются уникальными и самыми короткими?
Пример ввода (список путей):
[1, 2, 3]
[1, 2]
[1, 7]
[1, 8, 9, 10]
Ожидаемый результат:
[1, 2]
[1, 7]
[1, 8, 9, 10]
Путь [1, 2, 3]
игнорируется, поскольку он длиннее [1, 2]
, а путь [1, 8, 9, 10]
сохраняется, поскольку он уникален.