LeetCode——劍指 Offer 50. 第一個只出現一次的字元
阿新 • • 發佈:2021-02-03
技術標籤:JAVAleetcode雜湊字串javaleetcode
題目描述:
在字串 s 中找出第一個只出現一次的字元。如果沒有,返回一個單空格。 s 只包含小寫字母。
示例:
s = “abaccdeff”
返回 “b”
s = “”
返回 " "
限制:
0 <= s 的長度 <= 50000
JAVA程式碼如下:
class Solution {
public char firstUniqChar(String s) {
HashMap<Character, Integer> map = new LinkedHashMap <>();
int n = s.length();
char c=' ';
for (char ch : s.toCharArray()) {
map.put(ch, map.getOrDefault(ch, 0) + 1);
}
for (var entry : map.entrySet()) {
if(entry.getValue()==1){
c=entry.getKey();
break ;
}
}
return c;
}
}
class Solution {
public char firstUniqChar(String s) {
HashMap<Character, Integer> map = new LinkedHashMap<>();
int n = s.length();
char c=' ';
for (char ch : s.toCharArray()) {
map.put(ch, map.getOrDefault(ch, 0) + 1);
}
for (Character key : map.keySet()) {
Integer v = map.get(key);
if (v == 1) {
c = key;
break;
}
}
return c;
}
}
執行結果: