最近在学数据结构,自己根据c语言的书看着敲,c语言大致上是看懂了就是指针还是有点迷糊,大概实现了这样也不知道行不行
顶点结点类VNode
package 数据结构与算法.图Graph.邻接表;
/**
* 顶点结点
*
* @author HuangSir
* @create 2021-06-01 14:44
*/
public class VNode {
String data;//顶点所存的数据
ArcNode firstArc;//用到该顶点的第一个边
}
边结点类ArcNode类
package 数据结构与算法.图Graph.邻接表;
/**
*边结点
*
* @author HuangSir
* @create 2021-06-01 14:45
*/
public class ArcNode {
int adjvex;//顶点坐在顶点表中的下标
String info;//边的权值
ArcNode nextArc;//与这条边所用到的第一个顶点相连的下一个边
}
邻接表ALGraph
package 数据结构与算法.图Graph.邻接表;
import java.util.Scanner;
/**
* 用邻接表表示图
*
* @author HuangSir
* @create 2021-06-01 14:50
*/
public class ALGraph {
VNode[] vertices = new VNode[100];//顶点表
int vexnum;//当前图的顶点数
int arcnum;//当前图的边数
/**
* 在顶点表中遍历寻找数据为data的顶点,并返回其下标,找不到则返回-1