Мета
Сортуйте перелік елементів, які гарантують, що кожен елемент у списку після визначених залежностей.
Вхідні дані
Масив масивів цілих чисел, де кожне ціле число вказує індекс елемента, заснований на 0 або 1 на основі 1, після чого цей елемент повинен надходити. Вхід може бути масивом або рядком або будь-яким іншим, що читається людиною.
Наприклад, вхід на основі 0:
[
[ 2 ], // item 0 comes after item 2
[ 0, 3 ], // item 1 comes after item 0 and 3
[ ], // item 2 comes anywhere
[ 2 ] // item 3 comes after item 2
]
Припустимо, що немає кругових залежностей, завжди є хоча б одне дійсне замовлення.
Вихідні дані
Числа в порядку залежності. Неоднозначний наказ не повинен бути детермінованим. Вихідним може бути масив, текст або будь-що інше, що читається людиною.
У висновку має бути вказано лише одне замовлення, навіть якщо є кілька дійсних замовлень.
Можливі виходи для вищевказаного входу включають:
[ 2, 3, 0, 1 ]
[ 2, 0, 3, 1 ]
Оцінка балів
Функція або програма, яка завершує це в найменшій кількості байтів, виграє славу прийняття. Кінцевий термін - 6 днів.