欢迎来到天天文库
浏览记录
ID:49691065
大小:129.50 KB
页数:14页
时间:2020-03-03
《实验7 图及图的操作实验48196.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、实验报告七图及图的操作实验班级:姓名:学号:专业:一、实验目的:1、掌握图的基本概念和术语2、掌握图的存储结构及创建算法。3、掌握图的遍历算法(递归或非递归算法)。二、实验内容:1、图邻接矩阵存储结构表示及基本操作算法实现(1)邻接矩阵存储结构类定义:自定义如下:packageEx7.Ex7_1;importEx5.Ex5_1.Matrix;importEx7.Triple;importjava.util.List;/***Createdby74062on2017/5/17.*/publicclassMatrixGraph{privateMatrixmatrix;privateList<
2、E>vertxList;privatestaticfinalintMAX_WEIGHT=0x0000ffff;privateintsize;publicMatrixGraph(Triple[]TripleArray,ListvertxList){this.matrix=newMatrix(vertxList.size(),vertxList.size());this.vertxList=vertxList;for(Tripletriple:TripleArray){insertEdge(triple);}size=vertxList.size();}publicMatrixGraph(L
3、istvertxList){this.matrix=newMatrix(vertxList.size(),vertxList.size());size=vertxList.size();this.vertxList=vertxList;}publicvoidinsertEdge(inti,intj,intweight){if(i==j){thrownewIllegalArgumentException("不能插入自身环");}if(weight<0
4、
5、weight>MAX_WEIGHT)weight=MAX_WEIGHT;this.matrix.setElement(i,j,weight
6、);}publicvoidinsertEdge(Tripletriple){insertEdge(triple.getRow(),triple.getColumn(),triple.getweigth());}publicvoidinsertVertex(Ex){this.vertxList.add(x);if(size==matrix.getRow()){ExtendMatrix();}for(intj=0;j<=size;j++){matrix.setElement(size,j,MAX_WEIGHT);matrix.setElement(j,size,MAX_WEIGHT);}size+
7、+;}publicvoidremoveEdge(inti,intj){if(i==j){thrownewIllegalArgumentException("i不能等于j");}this.matrix.setElement(i,j,MAX_WEIGHT);}publicvoidremoveVertex(inti){if(i<0
8、
9、i>=vertxList.size()){thrownewIllegalArgumentException("i超出范围");}intn=vertxList.size();vertxList.remove(i);for(intj=i+1;j10、k=0;k=0&&i=-1&&j0&&matrix11、.getElement(i,k)
10、k=0;k=0&&i=-1&&j0&&matrix
11、.getElement(i,k)
此文档下载收益归作者所有