📄 bypath.cpp
字号:
// Bypath.cpp: implementation of the Bypath class.
//
//////////////////////////////////////////////////////////////////////
#include "stdafx.h"
#include "Bypath.h"
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
Bypath::Bypath(int d,SearchArea * s,Adaptability * a,Rand * rand):Balance(d,s,a)
{
loc=new double[dimension];
// FILE * file ;
// file=fopen("2.zn","w");
for(int i=0;i<dimension;i++)
loc[i]=i;
for(i=0;i<dimension;i++)
{
int n=rand->randint(dimension);
int m=rand->randint(dimension);
double temp=loc[n];
loc[n]=loc[m];
loc[m]=temp;
}
// fclose(file);
solution=adapt->adaption(loc);
}
Bypath::Bypath(Bypath * oi)
{
dimension=oi->dimension;
search=oi->search;
adapt=oi->adapt;
loc=search->SearchA(oi->loc);
solution=adapt->adaption(loc);
}
Bypath::Bypath(Bypath * oi,MaintainSequence * maintain)
{
dimension=oi->dimension;
search=oi->search;
adapt=oi->adapt;
loc=search->SearchA(oi->loc);
maintain->Maintain(loc);
solution=adapt->adaption(loc);
}
void Bypath::Store(FILE * file1,FILE * file2)
{
// FILE * file ;
// file=fopen("2.zn","w");
for(int i=0;i<dimension;i++)
{
// fprintf(file,"%d\n",(int)loc[i]);
fprintf(file1,"%d ",(int)loc[i]);
}
// fclose(file);
fprintf(file1,"\n");
fprintf(file2,"%f\n",solution);
}
double * Bypath::GetLocation()
{
return loc;
}
Bypath::~Bypath()
{
delete[] loc;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -