📄 bitvrandominitializer.cpp
字号:
// BitVRandomInitializer.cpp: implementation of the BitVRandomInitializer class.
//
//////////////////////////////////////////////////////////////////////
#include "../copyright.h" // Added 000323 by Aleksander 豩rn.
#include "BitVRandomInitializer.h"
#include "Rand.h"
#include "EABitset.h"
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
BitVRandomInitializer::BitVRandomInitializer(int size, int nbits, double prob, bool vary)
: number(size), bits(nbits), p(prob), oneShot(vary)
{
}
BitVRandomInitializer::~BitVRandomInitializer()
{
}
Population& BitVRandomInitializer::init()
{
cerr << "Init, size: " << number << ", bits: " << bits <<"...\n";
for(int i = 0; i < number; i++){
EABitset * v = new EABitset(bits);
if(!oneShot)
p = Rand::d();
for(int j = 0; j < bits; j++){
if(Rand::d() < p)
v->set(j, true);
}
pop.population.push_back(v);
}
cerr << "return from init\n";
return pop;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -