decodebinary.m

来自「可以作为人工免疫算法的一个框架」· M 代码 · 共 8 行

M
8
字号
%产生 [2^n 2^(n-1) ... 1] 的行向量,然后求和,将二进制转化为十进制 
function pop2=decodebinary(pop) 
[px,py]=size(pop); %求pop行和例数 
for i=1:py 
pop1(:,i)=2.^(py-1).*pop(:,i); %pop的每一个行向量(二进制表示),for循环语句将每个二进制行向量按位置 
py=py-1;                       % 乘上权重       
end                                
pop2=sum(pop1,2);              %求pop1的每行之和,即得到每行二进制表示变为十进制表示值,实现二进制到十进制的转变

⌨️ 快捷键说明

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