• 大小: 18KB
    文件类型: .rar
    金币: 2
    下载: 1 次
    发布日期: 2021-09-10
  • 语言: Java
  • 标签:

资源简介

算法分析与设计课程设计——图的同和识别(Ullmann算法java源码)

资源截图

代码片段和文件信息

package ucas.iie.graph.action;

import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;

import ucas.iie.graph.bean.EdgeBean;
import ucas.iie.graph.bean.GraphBean;
import ucas.iie.graph.bean.VertexBean;

public class IsomorphismImpl {
private ArrayList query_g;// 查询的子图
private ArrayList mydb_g;// 图的总数据

public IsomorphismImpl() {
query_g = new ArrayList();
mydb_g = new ArrayList();
}

/**
 * 
 * @param query
 * @param db
 * @return 返回初始的矩阵M0
 */
public int[][] getMatrixM(GraphBean query GraphBean db) {
int row = query.getvList().size();
int column = db.getvList().size();
int[][] M0 = new int[row][column];
// System.out.println(“M0:“);
for (int i = 0; i < row; i++) {
for (int j = 0; j < column; j++) {
String vi = query.getvList().get(i).getVertex();
String vj = db.getvList().get(j).getVertex();
if (db.getVDegree(vj) >= query.getVDegree(vi))
M0[i][j] = 1;
else
M0[i][j] = 0;
// System.out.print(M0[i][j] + “ “);
}
// System.out.println(““);
}
return M0;
}

public ArrayList getQuery_g() {
return query_g;
}

public void setQuery_g(ArrayList query_g) {
this.query_g = query_g;
}

public ArrayList getMydb_g() {
return mydb_g;
}

public void setMydb_g(ArrayList mydb_g) {
this.mydb_g = mydb_g;
}

/**
 * 
 * @param queryFile
 *            查询子图的路径
 * @param dbFile
 *            图的总数据路径
 * @throws IOException
 */
public void initGraphDB(String queryFile String dbFile) throws IOException {
// 读取查询子图的数据
BufferedReader q_br = new BufferedReader(new InputStreamReader(
new FileInputStream(queryFile)));
String lineData = q_br.readLine();
GraphBean qgb;
if (lineData.startsWith(“t #“)) {// 第一个子图
qgb = new GraphBean();
while ((lineData = q_br.readLine()) != null) {
if (lineData.startsWith(“t #“)) {
this.query_g.add(qgb);
qgb = new GraphBean();
continue;
} else if (lineData.startsWith(“v“)) { // 顶点
String vs[] = lineData.split(“ “);
VertexBean vb = new VertexBean();
vb.setVertex(vs[1]);
vb.setLabel(vs[2]);
qgb.getvList().add(vb);
} else { // 边
String es[] = lineData.split(“ “);
EdgeBean eb = new EdgeBean();
eb.setVertex_i(es[1]);
eb.setVertex_j(es[2]);
eb.setLabel_e(es[3]);
qgb.geteList().add(eb);
}
}
}

// 读取图数据
BufferedReader db_br = new BufferedReader(new InputStreamReader(
new FileInputStream(dbFile)));
lineData = db_br.readLine();
GraphBean dbgb;
if (lineData.startsWith(“t #“)) {//
dbgb = new GraphBean();
while ((lineData = db_br.readLine()) != null) {
if (lineData.startsWith(“t #“)) {
this.mydb_g.add(dbgb);
dbgb = new GraphBean();

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        301  2014-12-25 22:57  算法分析与设计课程设计——图的同构和识别(Ullmann算法java源码)\SubgraphIsomorphism\.classpath

     文件        395  2014-12-25 22:57  算法分析与设计课程设计——图的同构和识别(Ullmann算法java源码)\SubgraphIsomorphism\.project

     文件        598  2014-12-25 22:57  算法分析与设计课程设计——图的同构和识别(Ullmann算法java源码)\SubgraphIsomorphism\.settings\org.eclipse.jdt.core.prefs

     文件       8330  2015-01-15 19:47  算法分析与设计课程设计——图的同构和识别(Ullmann算法java源码)\SubgraphIsomorphism\bin\ucas\iie\graph\action\IsomorphismImpl.class

     文件        936  2014-12-26 09:54  算法分析与设计课程设计——图的同构和识别(Ullmann算法java源码)\SubgraphIsomorphism\bin\ucas\iie\graph\bean\EdgeBean.class

     文件       2999  2015-01-15 16:54  算法分析与设计课程设计——图的同构和识别(Ullmann算法java源码)\SubgraphIsomorphism\bin\ucas\iie\graph\bean\GraphBean.class

     文件        736  2014-12-26 09:52  算法分析与设计课程设计——图的同构和识别(Ullmann算法java源码)\SubgraphIsomorphism\bin\ucas\iie\graph\bean\VertexBean.class

     文件       9492  2015-01-15 19:47  算法分析与设计课程设计——图的同构和识别(Ullmann算法java源码)\SubgraphIsomorphism\src\ucas\iie\graph\action\IsomorphismImpl.java

     文件        714  2014-12-26 09:54  算法分析与设计课程设计——图的同构和识别(Ullmann算法java源码)\SubgraphIsomorphism\src\ucas\iie\graph\bean\EdgeBean.java

     文件       1994  2015-01-15 16:54  算法分析与设计课程设计——图的同构和识别(Ullmann算法java源码)\SubgraphIsomorphism\src\ucas\iie\graph\bean\GraphBean.java

     文件        525  2014-12-26 09:52  算法分析与设计课程设计——图的同构和识别(Ullmann算法java源码)\SubgraphIsomorphism\src\ucas\iie\graph\bean\VertexBean.java

     目录          0  2014-12-26 10:00  算法分析与设计课程设计——图的同构和识别(Ullmann算法java源码)\SubgraphIsomorphism\bin\ucas\iie\graph\action

     目录          0  2014-12-26 10:00  算法分析与设计课程设计——图的同构和识别(Ullmann算法java源码)\SubgraphIsomorphism\bin\ucas\iie\graph\bean

     目录          0  2014-12-26 10:00  算法分析与设计课程设计——图的同构和识别(Ullmann算法java源码)\SubgraphIsomorphism\src\ucas\iie\graph\action

     目录          0  2014-12-26 10:00  算法分析与设计课程设计——图的同构和识别(Ullmann算法java源码)\SubgraphIsomorphism\src\ucas\iie\graph\bean

     目录          0  2014-12-26 10:00  算法分析与设计课程设计——图的同构和识别(Ullmann算法java源码)\SubgraphIsomorphism\bin\ucas\iie\graph

     目录          0  2014-12-26 10:00  算法分析与设计课程设计——图的同构和识别(Ullmann算法java源码)\SubgraphIsomorphism\src\ucas\iie\graph

     目录          0  2014-12-26 09:48  算法分析与设计课程设计——图的同构和识别(Ullmann算法java源码)\SubgraphIsomorphism\bin\ucas\iie

     目录          0  2014-12-26 09:48  算法分析与设计课程设计——图的同构和识别(Ullmann算法java源码)\SubgraphIsomorphism\src\ucas\iie

     目录          0  2014-12-26 09:48  算法分析与设计课程设计——图的同构和识别(Ullmann算法java源码)\SubgraphIsomorphism\bin\ucas

     目录          0  2014-12-26 09:48  算法分析与设计课程设计——图的同构和识别(Ullmann算法java源码)\SubgraphIsomorphism\src\ucas

     目录          0  2014-12-25 22:57  算法分析与设计课程设计——图的同构和识别(Ullmann算法java源码)\SubgraphIsomorphism\.settings

     目录          0  2014-12-26 09:48  算法分析与设计课程设计——图的同构和识别(Ullmann算法java源码)\SubgraphIsomorphism\bin

     目录          0  2014-12-26 09:48  算法分析与设计课程设计——图的同构和识别(Ullmann算法java源码)\SubgraphIsomorphism\src

     目录          0  2014-12-25 22:57  算法分析与设计课程设计——图的同构和识别(Ullmann算法java源码)\SubgraphIsomorphism

     目录          0  2015-11-25 15:53  算法分析与设计课程设计——图的同构和识别(Ullmann算法java源码)

----------- ---------  ---------- -----  ----

                27020                    26


评论

共有 条评论

相关资源