术语

  • 有向完全图:把所有顶点都用边连起来的图,共n(n-1)条边。
  • 简单有向路径:不含重复顶点。我们讨论的“路径”都是简单的。
  • 简单有向环:除了起终点之外不含重复顶点和边的环。
  • 邻接表中的索引是边的起点,值是边的终点。

    构造图

  • 基本和无向图相同,其中邻接表存储边的时候只需要存储一次,而addEdge(int v,int w)参数有前后之分,前一个表示起点,后一个为终点。

    /**
     * @Author haien
     * @Description Direct graph有向图
     * @Date 2018/12/4
     **/
    public class Digraph {
        //顶点数
        private  int V;
        //边数
        private int E;
        //邻接点背包数组
        private Bag<Integer>[] adj;
    
        public Digraph(int V) {
            this.V=V;
            this.E=0;
            adj=(Bag<Integer>[])new Bag[V];
            for(int i=0;i<V;i++)
                adj[i]=new Bag<Integer>();