tsp2problem.h

来自「遗传算法vc++语言版源程序,台湾大学编写。」· C头文件 代码 · 共 53 行

H
53
字号
#ifndef _TSP2PROBLEM_
#define _TSP2PROBLEM_

#include <vector>
#include <cmath>
#include <float.h>
using namespace std;

#include "UOFProblem.h"

struct ROAD
{
	int c1;
	int c2;
	double dist;
	ROAD(int _a, int _b, double _d){c1 = _a;	c2 = _b;	dist = _d;}
	ROAD(){}
};

class TSP2Problem : public UOFProblem
{
public:
	UOFIdentity("TSP2Problem class",1);

	TSP2Problem();
	TSP2Problem(const TSP2Problem&);

	virtual double	GetResult(void*);
	virtual void	GetResult(void*, void*){}
	virtual void	GetJacobianResult(void*,void*){}
	virtual	void	SetConstraint(void*){}
	virtual void	LogHeader(ostream& os);
	virtual void	GetExternalData(void*);
	virtual void	PostProcess(void*){}

public:
	vector<ROAD>	m_Road;

private:
	double		Distance(int p1,int p2)
	{
		for(size_t i=0;i<m_Road.size();i++)
			if((p1==m_Road[i].c1 && p2==m_Road[i].c2)
				|| (p1==m_Road[i].c2 && p2==m_Road[i].c1))
				return m_Road[i].dist;
		return -1.0;
	}

};

#endif

⌨️ 快捷键说明

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