Init version

This commit is contained in:
2024-10-03 18:43:04 +07:00
commit f80052961f
186 changed files with 71676 additions and 0 deletions

View File

@@ -0,0 +1,26 @@
#pragma once
#include <string>
#include <vector>
#include "Gene.h"
/*
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
*/
class Chromosome {
friend class ChromosomeRearrangementStrategy;
friend class Genotype;
protected:
std::string name;
std::vector<Gene> genes;
public:
Chromosome(std::string _name) : name(_name) {};
Chromosome(std::string _name, Gene gene) : name(_name), genes(1, gene) {};
Chromosome(std::string _name, const std::vector<Gene>& _genes) : name(_name), genes(_genes) {};
void insertGene(Gene gene, int pos = 0);
void insertGeneToEnd(Gene gene, int pos = 0);
std::string getName() const { return name;}
const std::vector<Gene>& getGenesAsVector() const { return genes;}
};