第四題 替換空格

2021-08-04 02:02:03 字數 688 閱讀 6713

可以使用這樣的方法:

先遍歷一遍字串,求出字串中空格的個數,由此,可以計算出替換之後的字串的總長度,然後標記出字串的末尾p1和替換之後的末尾p2。

再逐步往前移動p1,p2,同時將p1資料複製到p2的位置中,如果p1指向了乙個空格,則將p1往前移動一格,p2的位置依次插入』0』 『2』 『%』並往前移動。

當空格替換完,p1與p2會到達同一位置。此演算法時間複雜度o(n)。

void replaceblack(char *string,int len)

int count = 0;

int strlength = 0;

for(int i=0;string[i] != '\0';++i)

}int newlength = strlength + count * 2;

if(len < newlength)

int indexoriginal = strlength + 1;

int indexnewlen = newlength + 1;

//不要在語句內比較時執行 indexoriginal-- 操作

while(indexoriginal >= 0 && indexoriginal < indexnewlen)

else

indexoriginal --;

}}

替換空格(四)

題目 請實現乙個函式,把字串中的每個空格替換成 20 你可以假定輸入字串的長度最大是1000。注意輸出字串的長度可能大於1000。class solution 新字串長度 int newlength spacenum 2 length 字串擴容 str.setlength newlength 原來字...

演算法題 替換空格

題目描述 請實現乙個函式,把字串 s 中的每個空格替換成 20 示例 1 限制 0 s 的長度 10000解答 因為是從乙個字元 空格 變成三個字元 20 所以申請乙個字元陣列,長度為字串長度的3倍。迴圈判斷字串中字元是否為空格,如果是將字元陣列中的size size 1 size 2三個位上分別賦...

每日一題 替換空格

解題思路 統計字元陣列中的空白字元數 計算出轉換後的字串長度 若空白字元數為0,則直接返回 1 若空白字元數不為0,則從字串最後一位開始檢查 若檢查為空白字元,則進行替換並前移 若檢查為非空白字元,則直接進行賦值並前移一位。public class main02 統計字元陣列中的空白字元數 int ...