Info
この質問は閉じられています。 編集または回答するには再度開いてください。
Can someone help me to implement this algorithm I have tried to but get errors
    7 ビュー (過去 30 日間)
  
       古いコメントを表示
    
Algorithm
 Last code = 255
 Series = First input character
 While not end of while
   character = next input character
   if (series + character in code table)
       series = series + character
   else
       output = code for series
       add series and character to code table
       series = character
   end
   end
   output = code for series
Here is my code:
a=[39 39 126 126;39 39 126 126;39 39 126 126;39 39 126 126];
[f,g]=size(a);
total = f*g;
count=1;
imgchar= a(:)';
lastcode = 255;
tel = 1;
reeks = imgchar(1,1);
reekstr = num2str(reeks);
for j = 2:total
   kodetabel{j}= strcat(' ');
   reekskar{j}= strcat(',');
end
for i=2:total
   karakter(1,i)=imgchar(1,i);
   karstr = num2str(karakter(1,i));
   reekskar{i} = strcat([reekstr,' ',karstr]);
   waar = 0;
   for k=2:total
       if reekskar{i}==kodetabel{k}
           reeks= reekskar{i};
           waar=1;
       end
   end
   if waar==0
       output{tel}=reekstr;
       kodetabel{i}=reekskar{i};
       lastcode = lastcode+1;
       kodetabelnr{i}=lastcode;
       reeks=karakter(1,i);
       tel = tel+1;
   end;
end;
output{tel}=reeks;
2 件のコメント
回答 (2 件)
  Laurent
      
 2013 年 10 月 7 日
        It depends a bit on what result you want, but if you change that line to
if strcmp(reekskar{i},kodetabel{k})
the script runs. I don't know if this what you want, but at least there is a result. If you want something else, please tell us the result that you expect.
この質問は閉じられています。
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

