📄 crossover.m
字号:
for i=1:2:39
if rand<0.9
cross_pos=round(10*rand); %交叉位置为0~9,若位置为0或1,则不进行交叉操作
if or(cross_pos==0, cross_pos==10)
continue;
end
for j=cross_pos+1:9
temp=pop(i,j);
pop(i,j)=pop(i+1,j);
pop(i+1,j)=temp;
end %for
cross_pos=round(10+10*rand);
if or(cross_pos==10, cross_pos==20)
continue;
end
for j=cross_pos+1:19
temp=pop(i,j);
pop(i,j)=pop(i+1,j);
pop(i+1,j)=temp;
end %for
end
end
clear i;
clear k;
clear j;
clear temp;
clear cross_pos;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -