[LeetCode]387. First Unique Character in a String

来源:互联网 发布:网络售后工程师简历 编辑:程序博客网 时间:2024/06/06 17:13

[LeetCode]387. First Unique Character in a String

题目描述

这里写图片描述

思路

遍历,对于每个字符,找到第一个相同的字符就终止
找到第一个满足条件的字符,终止循环
update1
用map计数,然后遍历字符串,当字符满足个数为1时,返回。若没有,返回-1

代码

class Solution {public:    int firstUniqChar(string s) {        int len = s.size();        int result = -1;        for (int i = 0; i < len; ++i){            bool flag = true;            for (int j = 0; j < len; ++j){                if (s[i] == s[j] && i != j) {                    flag = false;                    break;                }            }            if (flag) {                result = i;                break;            }        }        return result;    }};

update1

class Solution {public:    int firstUniqChar(string s) {        int len = s.size();        unordered_map<char, int> charMap;        for (auto &p : s){            charMap[p]++;        }        for (int i = 0; i < len; i++){            if (charMap[s[i]] == 1){                return i;            }        }        return -1;    }};
0 0
原创粉丝点击