字串右旋 字串去重

2021-08-04 23:42:11 字數 737 閱讀 9125

1.–將n個字元的陣列,迴圈右移k位。時間複雜度o(n)。

實現思路:

兩種實現思路:

1.借助輔助空間,按照後面的順序進行拷貝,最後拷貝回字串

2.三次反轉法就可實現

#include

void rotatekth(char

str,int size,int k)

2.【附加題】–刪除小寫字母字串中重複字元。如果可以,優先刪除重複字元中排在比他小字元前面的字元。 比如,輸入:bbcacdww;輸出:bacdw

void dultipicate(char

str, int size)

; for (int i = 0; i < size; i++)

}int

sum = 0;

for (int i = 0; i < 26; i++)

}int length = size - sum;

for (int i = 0; i < size; i++)

}int size1 = length;

char* temp=new

char[length];

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

}for (int i = 0; i < size1; i++)

str[size1] = 0;

}

字串去重

字串去重,思路是在乙個字串例如 strstrrtsiiiinnnggggg 中,遍歷所有的字元,拼接到stringbuffer中。在執行速度上來看stringbuffer的拼接速度要快與string。通過str.charat i 的方法得到當前遍歷到的字元。通過indexof方法得到該字元第一次出現...

字串去重

doctype html en utf 8 viewport content width device width,initial scale 1.0 document title head 思路 1.宣告乙個空字元 2.將需要去重字元,乙個乙個新增到空字串中 條件 s裡面沒有這個字元,就加進去 v...

左旋右旋字串

定義字串的左旋轉操作 把字串前面的若干個字元移動到字串的尾部。如把字串abcdef 左旋轉2 位得到字串cdefab。請實現字串左旋轉的函式。要求時間對長度為n 的字串操作的複雜度為o n 輔助記憶體為o 1 分析 如果不考慮時間和空間複雜度的限制,最簡單的方法莫過於把這道題看成是把字串分成前後兩部...