面試題55 字元流中第乙個不重複的字元

2021-07-02 04:54:02 字數 535 閱讀 1495

題目:請實現乙個函式用來找出字元流中第乙個只出現一次的字元。如,當從字元流中只讀出前兩個字元go時,第乙個只出現一次的字元時g,當從字元流中讀出前六個字元google時,第乙個只出現一次的字元是1.

演算法思路:與面試題35求字串中第乙個只出現一次的字元的思路相似,只不過把判斷條件改了。

在字串中找出第乙個只出現一次的字元的思路,字元是乙個長度為8的資料型別,因此有256種可能,所以建立乙個長度為256的陣列,遍歷字串,將當前字元的ascii碼值作為陣列的下標,值為當前字元出現的次數,然後再次遍歷字串,找出第乙個以當前字元為下標的陣列中值為1的字元就是要找的字元。

#include using namespace std;

//掃瞄字串,統計字元出現的次數

for(i=0;i=0)//大於等於0說明此字元已經出現過

}//掃瞄字串

for(i=0;i=0)

}}int main()

{ char * str="google";

cout<

面試題55 字元流中第乙個不重複的字元

題目 請實現乙個函式用來找出字元流中第乙個只出現一次的字元。例如,當從字元流中只讀出前兩個字元 go 時,第乙個只出現一次的字元是 g 當從該字元流中讀出前六個字元 google 時,第乙個只出現一次的字元是 l 輸出描述 如果當前字元流沒有存在出現一次的字元,返回 字元。這種題目我一般是採用乙個m...

面試題55 字元流中第乙個不重複的字元

請實現乙個函式用來找出字元流中第乙個只出現一次的字元。例如,當從字元流中只讀出前兩個字元 go 時,第乙個只出現一次的字元是 g 當從該字元流中讀出前六個字元 google 時,第乙個只出現一次的字元是 l 輸出描述 如果當前字元流沒有存在出現一次的字元,返回 字元。1 class solution...

55 字元流中第乙個不重複的字元

題目描述 請實現乙個函式用來找出字元流中第乙個只出現一次的字元。輸出描述 如果當前字元流沒有存在出現一次的字元,返回 字元。思路 使用乙個linkedhashmap來統計字元出現的次數。實現 maplinkedhashmap new linkedhashmap public void insert ...