2 替換空格

2021-08-14 02:43:35 字數 664 閱讀 8088

1、題目

2、程式1

確定變換後陣列的長度,再從後往前更新陣列,記得在最開始要先加』\0』

class

solution

int newstrlen = strlen + spacenum * 2;

int j = newstrlen;

str[j--] = '\0';

for(int i = strlen - 1; i >= 0; --i)

else

str[j--] = str[i];}}

};

3、程式2

重新定義乙個新的陣列,並逐個進行賦值,然後進行空格的替換

class

solution

int j = 0;

for(int i = 0; i < length; ++i) else}}

};

class

solution

else

if(tmp[i] == '\0')

else

str[j++] = tmp[i];}}

};

2 替換空格

c class solution 替換空格 int newlength originallength 2 numberofblank if newlength 1 length return char p1 str originallength 字元指標指向原始字串的末尾 char p2 str n...

2 替換空格

暴力法 從頭到尾掃瞄,遇到空格就替換,並將空格之後的所有字元都後移兩個位元組。時間複雜度o n 2 優化 先遍歷一遍字串,這樣就可以統計出字串空格的總數,並可以由此計算出替換之後的字串的總長度。每替換乙個空格,長度增加2,因此替換以後字串的長度等於原來的長度加上2乘以空格數目。之後,我們從字串的尾部...

改變2 替換空格

從前到後統計空格的個數,然後從後到前來逐個插入。一定要記得如果是不知道是哪齣問題的時候就舉個例子,然後從前到後跑一遍 public class solution int i str.length 1 int newlen str.length count 2 int newindex newlen ...