通過鍵盤輸入一串小寫字母(a~z)組成的字串。請編寫乙個字串壓縮程式,將字串中連續出席的重複字母進行壓縮,並輸出壓縮後的字串。
壓縮規則:
1、僅壓縮連續重複出現的字元。比如字串"abcbc"由於無連續重複字元,壓縮後的字串還是"abcbc"。
2、壓縮欄位的格式為"字元重複的次數+字元"。例如:字串"***yyyyyyz"壓縮後就成為"3x6yz"。
要求實現函式:
void stringzip(const char *pinputstr, long linputlen, char *poutputstr);
輸入pinputstr
: 輸入字串linputlen: 輸入字串長度
輸出 poutputstr
: 輸出字串,空間已經開闢好,與輸入字串等長;
注意:只需要完成該函式功能演算法,中間不需要有任何io的輸入輸出
示例 輸入:「cccddecc」 輸出:「3c2de2c」
輸入:「adef」 輸出:「adef」
輸入:「pppppppp」 輸出:「8p」
void stringzip(const char *pinputstr, long linputlen, char *poutputstr)
int begin = 0;
int pos = 0;
for (int i = 1; i <= linputlen; i++)
*(poutputstr+pos) = *(pinputstr+begin);
pos++;
begin = i;
} }*(poutputstr+pos) = '\0';
}
字串 字串壓縮
標題 字串壓縮 類別字串處理 時間限制 1s記憶體限制 1000kb 問題描述 有一種簡單的字串壓縮演算法,對於字串中連續出現的同乙個英文本元,用該字元加上連續出現的次數來表示 連續出現次數小於3時不壓縮 例如,字串aaaaabbbabaaaaaaaaaaaaabbbb可壓縮為a5b3aba13b4...
字串壓縮
include using namespace std 題目描述 通過鍵盤輸入一串小寫字母 a z 組成的字串。請編寫乙個字串壓縮程式,將字串中連續出席的重複字母進行壓縮,並輸出壓縮後的字串。壓縮規則 1.僅壓縮連續重複出現的字元。比如字串 abcbc 由於無連續重複字元,壓縮後的字串還是 abcb...
字串壓縮
隱約記得這道筆試題,之前在網上看到過一次,感覺應該能做出來,結果第一次嘗試折騰了半天,弄有bug統計kkll這樣的可以但是字元出現連續三次以上的這就不行了,第二天理了一次,用筆畫了畫,2分鐘搞定了。總結 寫程式必須先理清楚思路,再動手敲,不然。原題是這樣的 通過鍵盤輸入一串小寫字母 a z 組成的字...