⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 test_gene_variation.cpp

📁 用c编写的一个基于遗传算法的工程调度的实例。
💻 CPP
字号:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>

void gene_variation(int *chromosome, int num_of_job)
{
	int variation_pos;                 // 变异点
	int variation_value;               // 变异后基因值
	int ex_pos;                            // 与变异点的交换点
	int i;

	variation_pos = rand() % num_of_job;
	variation_value = rand() % num_of_job + 1;

	for (i=0; i<num_of_job; ++i)
	{
		if (chromosome[i] == variation_value)
		{
			ex_pos = i;
			break;
		}
	}

	i = chromosome[ex_pos];
	chromosome[ex_pos] = chromosome[variation_pos];
	chromosome[variation_pos] = i;
}

int main()
{
    int p[7] = {5,3,2,4,1,7,6};
    int i;
    
    srand(time(0));
    gene_variation(p,7);
    
    for (i=0; i<7; ++i)
    {
        printf("%d\t", p[i]);
    }
    printf("\n");
    
    system("pause");
}

⌨️ 快捷键说明

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