给校队选拔赛出了道DAG上的背包问题,需要生成DAG数据. 最开始使用的方法是先随机生成再判环,如果有环就重新生成.这种方法得到DAG的概率随着点数和边数的增加而急速降低,为了一个DAG要生成很多次,等很长时间.然后觉得这样的方法很stupid... 听了好甜给的先生成拓扑序的构造方法,这样可以保证生成的图里面没有环. 首先随机生成一个 1 到N 的permutation.这个permutation就是DAG的拓扑序,然后每次随机从前往后连边,这样就可以保证生成的是一个DAG了.真心膜拜 Lif…