无权图 Graph
wiki
表示图
- 邻接矩阵
adjMat
邻接矩阵是一个二维数组,数据项表示两点之间是否存在边,如果图有N个顶点Vertex
,邻接矩阵就是N*N
的数组。 - 邻接表
verterxList
邻接表是一个链表数组(或者是链表的链表),每个单独的链表表示了有哪些顶点与当前顶点邻接。
邻接矩阵建立图
- 插入边
addEdge
public void addEdge(int start,int end){
adjMat[start][end]=1;
adjMat[end][start]=1;
}
- 插入顶点
addVertex
public void addVertex(char lab){
verterxList[nVerts++]=new Verterx(lab);
}
深度优先搜索(DFS)
方法
在搜索到尽头的时候,深度优先搜索用栈记住下一步的走向,图中数字显示了顶点被访问的顺序。
找到一个起点,首先访问该顶点,然后把顶点