final为最终代码,其他为测试代码,有向无环图进行拓扑排序若不是DAG则输出圈