matlab费诺编码程序.docVIP

  • 9
  • 0
  • 约1.85千字
  • 约 4页
  • 2019-08-08 发布于浙江
  • 举报
%函数f1存放于f1.m function x=f1(i,j,p,r) global x; x=char(x); if(j=i) return; else q=0; for t=i:j %对于区间[i,j]自上而下求累加概率值 q=p(t)+q;y(t)=q; end for t=i:j%把所有自上而下的累加概率值与该区间总概率值减该累加概率值之差取绝对值存在一数组 v(t)=abs(y(t)-(q-y(t))); end for t=i:j if(v(t)==min(v)) %求该数组中最小的一个值来确定分界点位置 for k=i:t %赋值码字 x(k,r)=0; end for k=(t+1):j x(k,r)=1; end d=t; f1(i,d,p,r+1); %递归调用及相互调用 f2(d+1,j,p,r+1); f1(d+1,j,p,r+1); f2(i,d,p,r+1); else end end end return; %函数f2存放于f2.m function x=f2(i,j,p,r) global x; x=char(x); if(j=i) return; else q=0; for

文档评论(0)

1亿VIP精品文档

相关文档