劍指offer 02替換空格

2021-09-29 20:05:48 字數 533 閱讀 7744

首先我們先算出整個字串的長度,還有總共多少個空格。因為空格只佔乙個位元組,但是"%20"佔兩個位元組,所以新的容量是原來字串長度+空格數*2,然後把新的容量與給定的字串總大小作比較,如果大於給定的大小,就說明給的用例出錯了,直接返回。

如果沒出錯,從原來字串末尾開始遍歷,如果是空格,則依次附給新字串同時兩個下標往前走,如果不是則直接賦值兩個下標也往前走。

class

solution

++i;

}int newlength = reallength + num*2;

if(newlength > length)

return

;int jreal = reallength;

int jnew = newlength;

while

(jreal >=

0&& jnew > jreal)

else

--jreal;

}return;}

};

劍指offer02 替換空格

自己寫的 public class solution return str.tostring 思路 1.統計空格個數count 2.設定新的字串長度newlen 原長度 2 count 3.設定兩個指標,indexold和indexnew,分別指向舊陣列末尾和新陣列末尾,從後向前遍歷。有兩種情況 1...

劍指offer 02 替換空格

1 統計字串的長度和空格的個數 2 定義兩個指標分別指向原字串的末尾和替換後字串的末尾 3 移動兩指標,遇到空格進行替換,直到兩指標相遇結束 class solution int strlen 0 字串實際長度 int spacenum 0 空格個數 int i 0 while str i 0 st...

劍指offer02替換空格

2020.4.28 這是乙個查詢替換的過程,其實替換在string中有replace,直接就可以實現,但是已給的輸出引數定義是stringbuffer,是沒有replace語句,而且人家讓你程式設計實現,當然不是用現成的語句了。既然輸入時stringbuffer,可以通過.charat,找到每乙個c...