maink.m

来自「哈夫曼的MATLAB实现」· M 代码 · 共 56 行

M
56
字号
function f=maink()
s=input('输入向量:');
%P=sum(s);
%if P~=1
%    disp('没有归一');
%    maink();
%else
L=length(s);
R=-100.*ones(L,L);
if L==1
    R=1;
else
k=seleij(s);
i=k(1);
j=k(2);
m=0;
jl=zeros(L,2);
while s(i)<1    
    m=m+1;
    jl(m,:)=k;
    s(i)=s(i)+s(j);
    s(j)=1000;
    k=seleij(s);
    i=k(1);
    j=k(2);
end
g=jl(1:m,:);

n=1;
R(n,g(n,1))=0;
R(n,g(n,2))=1;
while n<m
    n=n+1;    
    R(n,g(n,1))=0;
    R(n,g(n,2))=1;
    for n1=2:n
        for n2=1:n1-1
        R(n1,g(n1-n2,2))=R(n1,g(n1-n2,1));
        end
    end
end

for x=1:L
disp('结果:');
zhengli(R(:,x))
end

end


            
            
        
    

⌨️ 快捷键说明

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