資料結構和演算法 劍指offer 替換空格

2021-09-29 21:15:22 字數 501 閱讀 2565

請實現乙個函式,將乙個字串中的每個空格替換成"%20"

解題思路

原地排序:

1.將字串設為足夠大的容量可以放入替換後的字串;

2.從尾部開始插入;

3.採用setcharat()函式替換字元

public

class

solution

//重新設定新字串的長度

int newlen = len + count *2;

str.

setlength

(newlen)

; int oldindex = len -1;

int newindex = newlen -1;

while

(oldindex >=0)

//如果是空格,那麼替換成『%20』

else

}return str.

tostring()

;}}

劍指offer 演算法和資料結構 查詢和排序

和資料結構一樣,演算法的面試題也備受面試官的青睞,其中排序和查詢是面試是考察演算法的重點。在準備面試的時候應該重點掌握二分查詢 歸併排序和快速排序,做到能隨時正確 完整地寫出它們的 查詢和排序都是在程式設計中常用到的演算法。查詢相對而言較為簡單,不外乎順序查詢 二分查詢 雜湊表查詢和二叉排序樹查詢。...

資料結構(劍指offer)(堆疊)(python)

定義棧的資料結構,請在該型別中實現乙個能夠得到棧中所含最小元素的min函式 時間複雜度應為o 1 思路 用空間換時間,用乙個輔助棧記錄當前棧中的最小值。輔助棧元素個數和資料棧保持一樣的數目。例如一次壓入資料棧數字串行為 3,2,4,1,5 那麼一次壓入輔助棧的為 3,2,2,1,1 當每次壓入資料棧...

劍指offer 五) 資料結構 棧

定義棧的資料結構,請在該型別中實現乙個能夠得到棧中所含最小元素的min函式 時間複雜度應為o 1 程式 思路 利用乙個輔助棧來存放最小值 棧 3,4,2,5,1 輔助棧 3,3,2,2,1 每入棧一次,就與輔助棧頂比較大小,如果小就入棧,如果大就入棧當前的輔助棧頂 當出棧時,輔助棧也要出棧 這種做法...