劍指 Offer 50 第乙個只出現一次的字元

2022-08-29 01:30:14 字數 1135 閱讀 3707

本題 題目鏈結

(方法三應用更廣泛;方法一雖有限制,但很好用,此題中該方法效率也最高)

思路分析

**如下

public char firstuniqchar(string s) 

char res = ' ';

for (char c : chars)

}return res;

}

方法二的優化 是參考leetcode大佬的題解。大佬leetcode主頁

思路分析

**如下:

public char firstuniqchar(string s) 

char res = ' ';

// 再次遍歷字串s,檢視雜湊表中鍵 c對應的value值,找出第乙個true

for (char c : chars)

}return res;

}

方法三 是參考leetcode大佬的題解。大佬leetcode主頁

思路分析

**如下

public char firstuniqchar(string s) 

for (map.entryentry : dic.entryset())

return ' ';

}

劍指Offer50 第乙個只出現一次字元

class solution for auto c s for auto c s return 自己寫的 劣勢在於使用集合而不是對映,因此無法存對應字元出現的次數,因此當insert乙個重複字元時,它可能是所求的目標字元,也可能是後面的,例如google,insert第二個o時,當前所求的目標字元 ...

劍指Offer 50 第乙個只出現一次的字元

在字串中找到第乙個只出現一次的字元。例 輸入 abaccdeff 則輸出 b 遍歷字串,每個字母第一次出現時將字母作為key,index作為val存入字典,當在字典中有key時,則將val改寫為 1,表示出現2次以上。遍歷字串結束後,遍歷字典,輸出位置最小的字元。時間複雜度 o n 空間複雜度 o ...

劍指offer 50 第乙個只出現一次的字元

劍指offer 50.第乙個只出現一次的字元 edited by ryunin date 2019 05 06 include include needed using namespace std using namespace gnu cxx needed class solution else ...