亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? bo4-2.cpp

?? 數(shù)據(jù)結(jié)構(gòu)(嚴慰民)配套純C代碼,準確理解源代碼的真諦
?? CPP
字號:
 // bo4-2.cpp 串采用堆分配存儲結(jié)構(gòu)(由c4-2.h定義)的基本操作(15個)
 // 包括算法4.1、4.4
 Status StrAssign(HString &T,char *chars)
 { // 生成一個其值等于串常量chars的串T
   int i,j;
   if(T.ch)
     free(T.ch); // 釋放T原有空間
   i=strlen(chars); // 求chars的長度i
   if(!i)
   { // chars的長度為0
     T.ch=NULL;
     T.length=0;
   }
   else
   { // chars的長度不為0
     T.ch=(char*)malloc(i*sizeof(char)); // 分配串空間
     if(!T.ch) // 分配串空間失敗
       exit(OVERFLOW);
     for(j=0;j<i;j++) // 拷貝串
       T.ch[j]=chars[j];
     T.length=i;
   }
   return OK;
 }

 Status StrCopy(HString &T,HString S)
 { // 初始條件: 串S存在。操作結(jié)果: 由串S復(fù)制得串T
   int i;
   if(T.ch)
     free(T.ch); // 釋放T原有空間
   T.ch=(char*)malloc(S.length*sizeof(char)); // 分配串空間
   if(!T.ch) // 分配串空間失敗
     exit(OVERFLOW);
   for(i=0;i<S.length;i++) // 拷貝串
     T.ch[i]=S.ch[i];
   T.length=S.length;
   return OK;
 }

 Status StrEmpty(HString S)
 { // 初始條件: 串S存在。操作結(jié)果: 若S為空串,則返回TRUE,否則返回FALSE
   if(S.length==0&&S.ch==NULL)
     return TRUE;
   else
     return FALSE;
 }

 int StrCompare(HString S,HString T)
 { // 若S>T,則返回值>0;若S=T,則返回值=0;若S<T,則返回值<0
   int i;
   for(i=0;i<S.length&&i<T.length;++i)
     if(S.ch[i]!=T.ch[i])
       return S.ch[i]-T.ch[i];
   return S.length-T.length;
 }

 int StrLength(HString S)
 { // 返回S的元素個數(shù),稱為串的長度
   return S.length;
 }

 Status ClearString(HString &S)
 { // 將S清為空串
   if(S.ch)
   {
     free(S.ch);
     S.ch=NULL;
   }
   S.length=0;
   return OK;
 }

 Status Concat(HString &T,HString S1,HString S2)
 { // 用T返回由S1和S2聯(lián)接而成的新串
   int i;
   if(T.ch)
     free(T.ch); // 釋放舊空間
   T.length=S1.length+S2.length;
   T.ch=(char *)malloc(T.length*sizeof(char));
   if(!T.ch)
     exit(OVERFLOW);
   for(i=0;i<S1.length;i++)
     T.ch[i]=S1.ch[i];
   for(i=0;i<S2.length;i++)
     T.ch[S1.length+i]=S2.ch[i];
   return OK;
 }

 Status SubString(HString &Sub, HString S,int pos,int len)
 { // 用Sub返回串S的第pos個字符起長度為len的子串。
   // 其中,1≤pos≤StrLength(S)且0≤len≤StrLength(S)-pos+1
   int i;
   if(pos<1||pos>S.length||len<0||len>S.length-pos+1)
     return ERROR;
   if(Sub.ch)
     free(Sub.ch); // 釋放舊空間
   if(!len) // 空子串
   {
     Sub.ch=NULL;
     Sub.length=0;
   }
   else
   { // 完整子串
     Sub.ch=(char*)malloc(len*sizeof(char));
     if(!Sub.ch)
       exit(OVERFLOW);
     for(i=0;i<=len-1;i++)
       Sub.ch[i]=S.ch[pos-1+i];
     Sub.length=len;
   }
   return OK;
 }

 void InitString(HString &T)
 { // 初始化(產(chǎn)生空串)字符串T。另加
   T.length=0;
   T.ch=NULL;
 }

 int Index(HString S,HString T,int pos) // 算法4.1
 { // T為非空串。若主串S中第pos個字符之后存在與T相等的子串,
   // 則返回第一個這樣的子串在S中的位置,否則返回0
   int n,m,i;
   HString sub;
   InitString(sub);
   if(pos>0)
   {
     n=StrLength(S);
     m=StrLength(T);
     i=pos;
     while(i<=n-m+1)
     {
       SubString(sub,S,i,m);
       if(StrCompare(sub,T)!=0)
	 ++i;
       else
         return i;
     }
   }
   return 0;
  }

 Status StrInsert(HString &S,int pos,HString T) // 算法4.4
 { // 1≤pos≤StrLength(S)+1。在串S的第pos個字符之前插入串T
   int i;
   if(pos<1||pos>S.length+1) // pos不合法
     return ERROR;
   if(T.length) // T非空,則重新分配空間,插入T
   {
     S.ch=(char*)realloc(S.ch,(S.length+T.length)*sizeof(char));
     if(!S.ch)
       exit(OVERFLOW);
     for(i=S.length-1;i>=pos-1;--i) // 為插入T而騰出位置
       S.ch[i+T.length]=S.ch[i];
     for(i=0;i<T.length;i++)
       S.ch[pos-1+i]=T.ch[i]; // 插入T
     S.length+=T.length;
   }
   return OK;
 }

 Status StrDelete(HString &S,int pos,int len)
 { // 從串S中刪除第pos個字符起長度為len的子串
   int i;
   if(S.length<pos+len-1)
     exit(ERROR);
   for(i=pos-1;i<=S.length-len;i++)
     S.ch[i]=S.ch[i+len];
   S.length-=len;
   S.ch=(char*)realloc(S.ch,S.length*sizeof(char));
   return OK;
 }

 Status Replace(HString &S,HString T,HString V)
 { // 初始條件: 串S,T和V存在,T是非空串(此函數(shù)與串的存儲結(jié)構(gòu)無關(guān))
   // 操作結(jié)果: 用V替換主串S中出現(xiàn)的所有與T相等的不重疊的子串
   int i=1; // 從串S的第一個字符起查找串T
   if(StrEmpty(T)) // T是空串
     return ERROR;
   do
   {
     i=Index(S,T,i); // 結(jié)果i為從上一個i之后找到的子串T的位置
     if(i) // 串S中存在串T
     {
       StrDelete(S,i,StrLength(T)); // 刪除該串T
       StrInsert(S,i,V); // 在原串T的位置插入串V
       i+=StrLength(V); // 在插入的串V后面繼續(xù)查找串T
     }
   }while(i);
   return OK;
 }

 void DestroyString()
 { // 堆分配類型的字符串無法銷毀
 }

 void StrPrint(HString T)
 { // 輸出T字符串。另加
   int i;
   for(i=0;i<T.length;i++)
     printf("%c",T.ch[i]);
   printf("\n");
 }

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
大美女一区二区三区| 日韩高清一级片| 欧美性大战久久| 国产毛片一区二区| 亚洲一区在线观看免费观看电影高清| 欧美本精品男人aⅴ天堂| gogogo免费视频观看亚洲一| 麻豆成人综合网| 一区二区在线观看视频在线观看| 久久这里只有精品6| 欧美日本国产视频| 91在线观看视频| 国产自产高清不卡| 日本vs亚洲vs韩国一区三区二区| 日韩理论电影院| 国产欧美日韩在线视频| 日韩女优毛片在线| 69久久夜色精品国产69蝌蚪网| av午夜一区麻豆| 国产99精品国产| 韩国成人精品a∨在线观看| 日日摸夜夜添夜夜添国产精品| 亚洲视频在线一区| ...xxx性欧美| 国产精品高潮呻吟| 欧美国产精品久久| 久久综合久久综合久久综合| 日韩亚洲欧美中文三级| 欧美日韩在线精品一区二区三区激情| 91视频.com| 99riav久久精品riav| 成人亚洲一区二区一| 国产一区二区三区免费播放 | 国产精品正在播放| 秋霞影院一区二区| 午夜av区久久| 日本视频一区二区| 日本在线播放一区二区三区| 三级一区在线视频先锋| 天天av天天翘天天综合网色鬼国产| 中文字幕一区二区三区色视频 | 欧美三级电影网| 欧美日韩一区二区在线观看视频| 91蝌蚪porny| 91久久精品一区二区三| 91色九色蝌蚪| 欧美日韩免费在线视频| 欧美情侣在线播放| 日韩欧美的一区| 久久综合视频网| 国产精品免费观看视频| 亚洲精品五月天| 亚洲午夜视频在线| 香蕉久久夜色精品国产使用方法 | 麻豆高清免费国产一区| 国产一区二区三区国产| 成人在线综合网| 91色视频在线| 欧美疯狂性受xxxxx喷水图片| 欧美一区二区播放| 日本一区二区三区高清不卡| 国产精品成人在线观看| 一区二区三区欧美日| 亚洲777理论| 久久se精品一区二区| 成人免费高清视频在线观看| 色综合激情五月| 7777女厕盗摄久久久| 久久精品人人做| 伊人色综合久久天天| 免费黄网站欧美| 国产91在线观看| 在线观看成人小视频| 日韩美女视频一区二区在线观看| 亚洲老司机在线| 欧美伊人久久久久久久久影院| 国产精品第13页| 日韩免费在线观看| 欧美一级夜夜爽| 国产精品久久久久久久久免费桃花| 中文一区二区完整视频在线观看| 亚洲精品国久久99热| 奇米精品一区二区三区在线观看一| 国产白丝精品91爽爽久久| 欧美影视一区在线| 久久久久久影视| 亚洲va国产va欧美va观看| 久久成人免费电影| 欧洲色大大久久| 久久九九久精品国产免费直播| 亚洲高清不卡在线观看| 国产电影精品久久禁18| 欧美色综合久久| 中文字幕一区二区在线观看| 男女男精品视频网| 91年精品国产| 国产亚洲一区二区三区| 亚洲福中文字幕伊人影院| 成人激情免费视频| 欧美xingq一区二区| 亚洲妇熟xx妇色黄| 91免费在线播放| 国产欧美视频在线观看| 老司机免费视频一区二区 | 欧美在线观看禁18| 国产欧美一区二区精品久导航 | 在线不卡a资源高清| 中文字幕在线观看一区二区| 九九九久久久精品| 欧美疯狂做受xxxx富婆| 一区二区三区四区乱视频| 国产精品一区专区| 精品国产sm最大网站免费看| 香蕉成人伊视频在线观看| 色呦呦国产精品| 亚洲视频免费观看| va亚洲va日韩不卡在线观看| 国产日韩精品一区二区浪潮av | 亚洲国产aⅴ成人精品无吗| 成人app在线| 国产女主播一区| 久久国内精品自在自线400部| 亚洲激情图片qvod| av在线免费不卡| 国产精品免费久久久久| 国产乱码精品一品二品| 久久影院午夜片一区| 免费看日韩精品| 欧美大片在线观看一区| 日韩电影在线观看电影| 欧美日韩高清影院| 亚洲曰韩产成在线| 欧洲国内综合视频| 亚洲成人在线观看视频| 欧美三区在线观看| 午夜av一区二区| 欧美精品丝袜久久久中文字幕| 亚洲成人激情自拍| 在线成人免费观看| 久88久久88久久久| 国产日韩欧美不卡在线| 成人伦理片在线| 亚洲免费视频成人| 欧美无乱码久久久免费午夜一区| 亚洲韩国一区二区三区| 欧美人xxxx| 精品一区二区三区免费播放| 国产婷婷一区二区| 97成人超碰视| 一区二区三区日韩| 欧美久久久久久久久中文字幕| 天天av天天翘天天综合网| 日韩一区二区在线看片| 极品少妇xxxx精品少妇| 国产精品你懂的| 欧美午夜电影网| 日韩电影免费在线观看网站| 精品国产免费久久| av影院午夜一区| 亚洲最新视频在线观看| 制服丝袜一区二区三区| 国产精品一区二区久久不卡| 国产精品短视频| 欧美男女性生活在线直播观看| 秋霞影院一区二区| 中文成人综合网| 欧美日韩久久一区二区| 韩国欧美国产一区| 亚洲女人****多毛耸耸8| 在线成人免费视频| 成人一区二区三区视频在线观看| 亚洲免费在线观看| 欧美电视剧在线看免费| www.亚洲人| 秋霞av亚洲一区二区三| 中文字幕成人av| 7777女厕盗摄久久久| 成人av在线网| 日韩福利电影在线| 亚洲欧洲日韩女同| 日韩免费电影一区| 色国产精品一区在线观看| 麻豆成人av在线| 一区二区三区在线观看网站| 欧美精品一区二区三区蜜桃| 色哟哟国产精品| 国产精品综合视频| 日本亚洲电影天堂| 亚洲免费av在线| 久久婷婷色综合| 在线电影欧美成精品| 91视频在线观看| 狠狠色综合色综合网络| 亚洲综合av网| 中文字幕一区二区日韩精品绯色 | 日本一区二区动态图| 欧美精品123区| 一本色道久久综合亚洲aⅴ蜜桃| 精品中文av资源站在线观看| 亚洲一区在线观看网站|