graph.java

来自「dm s preparing process. In this case we 」· Java 代码 · 共 65 行

JAVA
65
字号
/* created at 2005-12-23 */
package com.clustering.ds.graph;

import java.util.Iterator;

import com.clustering.ds.tree.Tree;

/**
 * 该类是图概念的对应.
 * 
 * @author Avon
 * @version 0.9
 * @since 0.9
 */
public interface Graph {
	/**
	 * 返回当前图的类型
	 * 
	 * @return 当前图的类型
	 */
	GraphCategory getGraphCategory();

	Vertex getVertex(long id);

	/**
	 * 返回从v1到v2的图
	 * 
	 * @return 从v1到v2的图
	 */
	Arc getArc(Vertex v1, Vertex v2);
	Arc getArc(long v1, long v2);

	/**
	 * 向图中添加节点
	 * 
	 * @return 返回添加的节点
	 */
	Vertex addVertex();

	Arc addArc(Vertex v1, Vertex v2);

	Vertex removeVertex(long id);
	
	Vertex removeVertex(Vertex vertex);

	Arc removeArc(Vertex v1, Vertex v2);

	Iterator getVertexIterator();

	Iterator getArcIterator();

	long getVertexNumber();

	long getArcNumber();

	/**
	 * 返回当前图对应的森林.
	 * <p>
	 * 同一个图,由于策略不同,产生的生成森林也会不同,该方法中主要包含创建生成森林的逻辑
	 * 
	 * @return 当前图对应的森林
	 */
	Tree[] toForest();
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?