字串的調整與替換

2021-09-11 07:50:04 字數 1005 閱讀 2617

【題目】給定乙個字元型別的陣列chas,chas右半區全是空字元,左半區不含有空字元。現在想將左半區中所有的空格字元替換成「%20」,假設chas右半區足夠大,可以滿足替換所需要的空間,請完成替換函式。

【舉例】如果把chas的左半區看作字串,為「a b c」,假設chas的右半區足夠大。替換後,chas的左半區為「a%20b%20%20c」。

【要求】替換函式的時間複雜度為o(n),額外空間複雜度為o(1)

public

static

void

replace

(char

chas)

int len;

int num =0;

for(len =

0; len < chas.length && chas[len]!=0

; len++)}

int j = len +

2* num -1;

for(

int i = len -

1; i >-1

; i--

)else

}}

【題目】給定乙個字元型別的陣列chas,其中只含有數字字元和「-」字元。現在想把所有的「-」字元挪到chas的左邊,數字字元挪到chas的右邊。請完成調整函式

【舉例】如果chas看作字串,為「–12345」。調整後為chas為「–12345」.

【要求】替換函式的時間複雜度為o(n),額外空間複雜度為o(1),不得改變量字字元從左到右出現的順序。

public

static

void

modify

(char

chas)

int j = chas.length -1;

for(

int i = chas.length -

1; i >-1

; i--)}

for(

; j >-1

;)}

字串問題 字串的調整與替換

題目 給定乙個字元型別的陣列chas,chas的右半區全是空字元,左半區不含有空字元。現在想將左半區中所有的空格字元替換成 20 假設chas的右半區足夠大,可以滿足替換所需要的空間,請完成替換函式。要求時間複雜度o n 空間複雜度o 1 補充題目 給定乙個字元型別的陣列chas,其中只含有數字字元...

程式設計師面試指南 字串的調整與替換

題目 給乙個字元型別的陣列chas,將其中的空格替換成20 思路 1.遍歷乙個陣列,統計出空格的數量num,陣列的長度 本來就知道 2.再遍歷一遍原陣列,將原陣列從最後遍歷到開始位置,將其值從len 2 num 1的位置放到陣列開頭的位置。總體思路就是將原陣列的元素複製到新擴容的位置 public ...

字串調整

今天聽左大神講了乙個和字串有關的問題感覺挺有意思的決定把它實現一下。題目 給定乙個字串str,和乙個整數i,i代表str中的位置,將str 0,i 移到右側,str i 1,n 1 移到左側 n為字串長度 舉例 str abcde i 2,將str調整為 deabc 要求 時間複雜度為o n 額外時...