目标
对项目列表进行排序,确保每个项目都在指定的依赖项之后列出。
输入值
整数数组的数组,其中每个整数指定该项目必须紧随其后的另一个项目的从0开始或从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天。