刪除非連續重複字元

2021-06-20 13:40:31 字數 585 閱讀 5528

演算法思路:

假設當前待處理字元位於目標字元陣列的snow處,當前結果字元陣列的可用位置為pnow,檢查是否出現連續相同字元,如果出現,則將最長連續相同字元放入pnow開始的連續可用位置;如果不出現,則取snow處字元與結果字元(pnow-1)到0處的字元對比,使用乙個變數作為指示,如果沒有找到匹配,該變數值為-1;如果找到,這變數值為匹配值所在位置。使用變數mismatch標識是否匹配到。如果匹配到則處理下乙個未處理字元,如果未匹配到,則將該字元裝入結果字元陣列的pnow處。

以下**在xcode 4.6.3上編譯通過

#include #include typedef enum _boolbool;

int main(int argc, const char * argv)

elseelse mismatch = no;

if(mismatch)

++snow;}}

processed[pnow]='\0';

printf("%s",processed);

return 0;

}

結果:ajsdjjjjddddssspotf

刪除重複字元

本題要求編寫程式,將給定字串去掉重複的字元後,按照字元ascii碼順序從小到大排序後輸出。輸入格式 輸入是乙個以回車結束的非空字串 少於80個字元 輸出格式 輸出去重排序後的結果字串。輸入樣例 ad2f3adjfeainzzzv輸出樣例 23adefijnvz include include voi...

0010 刪除重複字元

7 23 刪除重複字元 20 分 本題要求編寫程式,將給定字串去掉重複的字元後,按照字元ascii碼順序從小到大排序後輸出。輸入格式 輸入是乙個以回車結束的非空字串 少於80個字元 輸出格式 輸出去重排序後的結果字串。輸入樣例 ad2f3adjfeainzzzv 輸出樣例 23adefijnvz 注...

PTA 刪除重複字元

本題要求編寫程式,將給定字串去掉重複的字元後,按照字元ascii碼順序從小到大排序後輸出。輸入是乙個以回車結束的非空字串 少於80個字元 輸出去重排序後的結果字串。ad2f3adjfeainzzzv 23adefijnvz 題目只是說非空字串,所以要用getline 不要用cin,使用set cha...