63 在字串中刪除特定的字元

2021-06-26 07:33:06 字數 877 閱讀 4463

63.在字串中刪除特定的字元。

題目:輸入兩個字串,從第一字串中刪除第二個字串中所有的字元。例如,輸入」

they are students.」和」aeiou」,  則刪除之後的第乙個字串變成」thy r stdnts.」。

/*63.在字串中刪除特定的字元。

題目:輸入兩個字串,從第一字串中刪除第二個字串中所有的字元。例如,輸入」

they are students.」和」aeiou」, 則刪除之後的第乙個字串變成」thy r stdnts.」。

分,因為寫程式操作字串能很好的反映我們的程式設計基本功。

對於查詢,快速的方法就是使用雜湊。

對於第二個字串中的每乙個字元,我們用字元的ascii碼值作為雜湊函式,將其對映到長度為256的布林陣列中,

這樣對於第乙個字串的每乙個字元,查詢該字元在陣列特定位置是否存在即可。

對於刪除我們可以使用快慢指標。dest和source指標初始化為第乙個字串的開始。

然後,每個迴圈中,如果指向的字元不在第二個字串中,

則將該字元複製給dest指向的位置,並且dest和source同時向前走一步,

如果指向的字元在第二個字串,則僅僅將source向前走一步。

最後dest指向的位置填上乙個終止符。

*/ #include using namespace std;

void func(char* first,char* second)

char *dest,*source;

dest=first;

source=first;

while(*source)

else

++source;

}*dest='\0';

cout <

在字串中刪除特定字元

第一種方法 遍歷原陣列,在待刪陣列裡遍歷是否刪除該元素 char removechars char str,const char remove if state temp count str i state true i temp count 0 return temp 第二種方法 時間複雜度o n...

在字串中刪除特定的字元(字串)。

題目 輸入兩個字串,從第一字串中刪除第二個字串中所有的字元。例如,輸入 they are students.和 aeiou 則刪除之後的第乙個字串變成 thy r stdnts.其實這類題有個特點,字串中的字元分為兩類,就可以聯想快速排序裡的將當前的陣列分為左右兩組,其中左邊的數字小於某值,右邊的數...

在字串中刪除特定的字元

題目 輸入兩個字串,從第一字串中刪除第二個字串中所有的字元。例如,輸入 they are students.和 aeiou 則刪除之後的第乙個字串變成 thy r stdnts.分析 這是一道微軟面試題。在微軟的常見面試題中,與字串相關的題目佔了很大的一部分,因為寫程式操作字串能很好的反映我們的程式...