当前位置:网站首页>2.<tag-哈希表, 字符串>补充: 剑指 Offer 50. 第一个只出现一次的字符 dbc

2.<tag-哈希表, 字符串>补充: 剑指 Offer 50. 第一个只出现一次的字符 dbc

2022-07-05 20:40:00 菜菜的大数据开发之路

剑指 Offer 50. 第一个只出现一次的字符

[案例需求]

在这里插入图片描述

[思路分析一, 两次遍历]

在这里插入图片描述

[代码实现]

class Solution {
    
    public char firstUniqChar(String s) {
    
        Map<Character, Integer> frequency = new HashMap<Character, Integer>();
        for (int i = 0; i < s.length(); ++i) {
    
            char ch = s.charAt(i);
            frequency.put(ch, frequency.getOrDefault(ch, 0) + 1);
        }
        for (int i = 0; i < s.length(); ++i) {
    
            if (frequency.get(s.charAt(i)) == 1) {
    
                return s.charAt(i);
            }
        }
        return ' ';
    }
}

在这里插入图片描述

[思路分析二, 利用API]

class Solution {
    
    public char firstUniqChar(String s) {
    
        for(int i = 0; i< s.length(); i++){
    
            char value = s.charAt(i);
            if(s.indexOf(value)==s.lastIndexOf(value)){
    
                return value;
            }
        }
        return ' '; 
    }
}
原网站

版权声明
本文为[菜菜的大数据开发之路]所创,转载请带上原文链接,感谢
https://sha-pao-zi.blog.csdn.net/article/details/125610548