graph.h

来自「bayes network 的分三角形的算法」· C头文件 代码 · 共 43 行

H
43
字号
#pragma once

#include <iostream>
#include "GraphNode.h"
#include "SimpleList.h"


using namespace std;

class Graph
{
public:
	typedef SimpleList<Graph> TriGraph;

	Graph(void);
	Graph(const Graph &g);
	~Graph(void);
	void Create(int number);
	void AddNode(GraphNode const &node,int index);
	void AddRelationship(int from,int to);
	void RemoveRelationship(int from,int to);
	void Dump();
	Graph operator=(const Graph &g);
	Graph GenerateGm();
	TriGraph Triangulate();
	void Clear();
	bool IsSaved(const Graph &cluster,const TriGraph &savedCluster);
protected:
	static const int MAX=50;
	int nodeNumber;	//节点数量
	int edgeNumber;	//边的数量
	int nodeMatrix[MAX][MAX];	//节点的邻接矩阵
	GraphNode nodes[MAX];	//节点的具体信息
	int weight;		//图的权重

	bool operator<=(const Graph &g) const;
	GraphNode SelectNode(const Graph &gc);
	void RemoveNode(int index);
	void NotifyChangeID(GraphNode &n,int id);
	void MakeTriangle();
	void ClearRelationship();
};

⌨️ 快捷键说明

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