本文整理汇总了C++中DNA::begin方法的典型用法代码示例。如果您正苦于以下问题:C++ DNA::begin方法的具体用法?C++ DNA::begin怎么用?C++ DNA::begin使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类DNA
的用法示例。
在下文中一共展示了DNA::begin方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: translateToDnaPhenotypicOrdinal
tsp_individual_multi::DNA tsp_individual_multi::translateToDnaPhenotypicOrdinal(const DNA trait){
DNA ordinal;
DNA tmp;
for(int i=0;i<trait.size();i++){
tmp.push_back(i);
}
ordinal.resize(trait.size());
for(int i=0;i<trait.size();i++){
ordinal[i] = tmp[trait[i]];
tmp.erase(tmp.begin() + trait[i]);
}
return ordinal;
}
示例2: main
int main()
{
#ifndef ONLINE_JUDGE
freopen("in_2945.txt","r",stdin);
#endif
four[0]=1;
for(int i=1;i<=20;++i)
{
four[i]=four[i-1]*4;
}
while(scanf("%d%d\n",&n,&m)&&n)
{
dna.clear();
memset(cnt,0,sizeof(cnt));
for(int i=0;i<n;++i)
{
//scanf("%s\n",&buf);
gets(buf);
long long tmp=0;
for(int j=0;j<m;++j)
{
tmp+=four[j]*GetW(buf[j]);
}
mit=dna.find(tmp);
if(mit==dna.end())
{
dna[tmp]=1;
}
else
{
dna[tmp]++;
}
}
for(mit=dna.begin();mit!=dna.end();++mit)
{
cnt[mit->second]++;
}
for(int i=1;i<=n;++i)
{
printf("%d\n",cnt[i]);
}
}
return 0;
}
示例3: translateToDnaPhenotypicTrait
tsp_individual_multi::DNA tsp_individual_multi::translateToDnaPhenotypicTrait(const DNA ordinal){
DNA trait;
DNA tmp;
for(int i=0;i<ordinal.size();i++){
tmp.push_back(i);
}
for(int i=0;i<ordinal.size();i++){
for(int j=0;j<tmp.size();j++){
if(ordinal[i] == tmp[j]){
trait.push_back(j);
tmp.erase(tmp.begin() + j);
break;
}
}
}
return trait;
}