20182311 2019-2020-1 《数据结构与面向对象程序设计》实验九报告
20182311 2019-2020-1 《数据结构与面向对象程序设计》实验九报告 课程:《程序设计与数据结构》 班级: 1823 姓名: 冷冲 学号:20182311 实验教师:王志强 实验日期:2019年12月7日 必修/选修: 必修 1.实验内容 初始化:根据屏幕提示(例如:输入1为无向图,输入2为有向图)初始化无向图和有向图(可用邻接矩阵,也可用邻接表),图需要自己定义(顶点个数、边个数,建议先在草稿纸上画出图,然后再输入顶点和边数) 图的遍历:完成有向图和无向图的遍历(深度和广度优先遍历) 完成有向图的拓扑排序,并输出拓扑排序序列或者输出该图存在环 完成无向图的最小生成树(Prim算法或Kruscal算法均可),并输出 完成有向图的单源最短路径求解(迪杰斯特拉算法) 2. 实验过程及结果 (一)初始化:基于邻接矩阵构建有向图和无向图 import java.util.*; public class Graph { private int[][] matrix;//邻接矩阵 private char[] vexs;//顶点数组 private int vexnum;//节点数 private int arcnum;//边数 private int[] isVisited;//0表示未被访问。1表示访问过 private Queue list; public Graph