1. 程式人生 > 其它 >LeetCode——劍指 Offer 50. 第一個只出現一次的字元

LeetCode——劍指 Offer 50. 第一個只出現一次的字元

技術標籤: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; } }

執行結果:
在這裡插入圖片描述