91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 39KB
    文件類型: .zip
    金幣: 2
    下載: 0 次
    發(fā)布日期: 2021-05-06
  • 語(yǔ)言: C/C++
  • 標(biāo)簽: LZ78??

資源簡(jiǎn)介

c++編寫(xiě)的簡(jiǎn)單LZ78編碼程序,內(nèi)附步驟說(shuō)明

資源截圖

代碼片段和文件信息


#include
#include
using?namespace?std;

void?main()
{
//////////////////////////////////////////////////////////////////////////////////////////初始化操作
??int?i=0j=0z=0flag=0p_count=0;
??char?*p;????????//字符指針p
??string?C=““;????//當(dāng)前字符C
??char?str[20];???//字符數(shù)組str
??int?pos[20];????//位置數(shù)組
??string?dic[20];?//字典數(shù)據(jù)的存儲(chǔ)
??string?Z[20];???//Z字典為空
??string?P=““;????//P前綴為空
??cin>>str;???????//輸入字符數(shù)組
??p=str;??????????//指針指向str?


//////////////////////////////////////////////////////////////////////////////////////////輸入操作
??cout<??for(i=0;i??{cout<??cout<??for(i=0;i??{cout<<*(p+i)<<“?“;}
??cout<??cout<<“編碼過(guò)程:“<??cout<<“步驟“<<“??“<<“位置“<<“??“<<“字典“<<“??“<<“輸出“<??
????
//////////////////////////////////////////////////////////////////////////////////////////編碼過(guò)程
??do
??{
????C=*p;//當(dāng)前字符為str中字符

?????for(i=0;i<=z;i++)//尋找字典中內(nèi)容
?{
???????if((P+C)==Z[i])//判斷P+C是否在詞典中
???{
?P=P+C;//后綴累積
?????flag=1;//標(biāo)志位提示有相同單元
?break;//跳出循環(huán)
???}
?}
??????
?if(flag==0)//如果沒(méi)在字典中找到
?{???
?Z[z]=P+C;//存入字典?
?for(j=0;j<=z;j++)//一系列輸出操作:若為單字符自動(dòng)加入字典雙字符則比較后得出輸出位置
?{
?if(P==Z[j]?||?Z[z].length()==1)//編碼過(guò)程的顯示
?{?
???cout< ???pos[z+1]=p_count+2-Z[z].length();????????????????????//存儲(chǔ)位置至數(shù)組pos
???????????????dic[p_count+2-Z[z].length()]=Z[z];???????????????????//存儲(chǔ)字典至數(shù)組dic
???cout< ???if(Z[z].length()!=1)
???cout<<“(“<???????????????else
???cout<<“(0“< ???break;
?}
?}
?z++;//數(shù)組下一位
?P=““;//清空
?} ?
??}
??while(flag=0p_count++*(++p)!=‘\0‘);//標(biāo)志位清空非‘\0‘情況下循環(huán)再次開(kāi)始

??if(P!=““)//檢測(cè)前綴P是否為空
??{
????cout<<“剩余編碼:“<??}

??for(i=0;i<10;i++)
cout<
?
////////////////////////////////////////////////////////////////////////////////////////////解碼過(guò)程
??cout<??cout<<“例如:0A0B0C1A1B...?...“<??char?str1[20];
??char?*p1;
??int?m=0k=0;
??cin>>str1;
??p1=str1;
??cout<<“解碼結(jié)果:“<??for(;*(p1+k)!=‘\0‘;k++)
??{
???if(k%2==0)
???{?
??m=*(p1+k);
??if(m==48)
????cout<<““;
??else
????????cout<???}
???else
????cout<<*(p1+k);
??}
??cout<////////////////////////////////////////////////////////////////////////////////////////////解碼結(jié)束
}


??

?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2013-12-03?16:07??LZ78\
?????文件???????57856??2013-12-03?16:09??LZ78\LZ78編碼步驟.doc
?????文件????????2882??2013-12-03?16:04??LZ78\LZcode.cpp

評(píng)論

共有 條評(píng)論