package com.datastructure;

import java.util.ArrayList;

/**
 * 有向图的实现
 */
public class ListGraph {
    ArrayList<ArrayList<Integer>> graphs;//定义连接的边

    /**
     *
     * @param v 顶点数量
     */
    public ListGraph(int v) {
        graphs = new ArrayList<>(v);
        for (int i = 0; i < v; i++) {//顶点增加一个list
            graphs.add(new ArrayList<>());
        }
    }

    /**
     *
     * @param start
     * @param end
     */
    public void addEdge(int start, int end) {
        graphs.get(start).add(end);
    }

    public void removeEdge(int start, int end) {
        graphs.get(start).remove(end);
    }

}

Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐