题解 | #第一个只出现一次的字符#

第一个只出现一次的字符

http://www.nowcoder.com/practice/1c82e8cf713b4bbeb2a5b31cf5b0417c

import java.util.HashMap;
import java.util.Map;
// 用HashMap保存,顺序扫描str,第一个为1的就是结果
public class Solution {
    public int FirstNotRepeatingChar(String str) {

        char[] chars = str.toCharArray();
        Map<Character, Integer> map = new HashMap<>();
        for (char c : chars) {
            map.put(c, map.getOrDefault(c, 0) + 1);
        }
        int i = 0;
        for (char c : chars) {
            if (map.get(c) == 1) {
                return i;
            }
            i++;
        }
        return -1;
    }
}
全部评论

相关推荐

01-17 12:35
吉首大学 Java
秋招之BrianGriffin:自己的工作自己做!😡
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务