387. First Unique Character in a String
来源:互联网 发布:阿里云100gb空间多少钱 编辑:程序博客网 时间:2024/04/28 15:32
- First Unique Character in a String
Given a string, find the first non-repeating character in it and return it’s index. If it doesn’t exist, return -1.
Examples:
s = “leetcode”
return 0.
s = “loveleetcode”,
return 2.
Note: You may assume the string contain only lowercase letters.
我的做法:
class Solution {public: int firstUniqChar(string s) { map<char, int> maps; char target; int min=-1; for (char a : s) { maps[a]++; } for (map<char, int>::iterator iter = maps.begin(); iter != maps.end(); iter++) { if (iter->second == 1) { target = iter->first; if (min == -1) min = s.find(target); if (min > s.find(target)) { min = s.find(target); } } } return min; }};
太慢了,太冗余,后来发现别人的做法跟我刚开始的想法相似,不过他解决了查询过程中,查的不是按照字母表先后顺序,而是按照字母在字符串中顺序的问题。
别人的做法:
class Solution {public: int firstUniqChar(string s) { int m[26] = {0}; for (char a : s) m[a - 'a']++; for (int i = 0; i < s.length(); i++) if (m[s[i] - 'a'] == 1) return i; return -1; }};
0 0
- 387. First Unique Character in a String
- 387.First Unique Character in a String
- 387. First Unique Character in a String
- 387. First Unique Character in a String
- 387. First Unique Character in a String
- 387. First Unique Character in a String
- 387. First Unique Character in a String
- 387. First Unique Character in a String
- 387. First Unique Character in a String
- 387. First Unique Character in a String
- 387. First Unique Character in a String
- 387. First Unique Character in a String
- 387. First Unique Character in a String
- 387. First Unique Character in a String
- 387. First Unique Character in a String
- 387. First Unique Character in a String
- 387. First Unique Character in a String
- 387. First Unique Character in a String
- Unique Binary Search Trees II
- HTML和CSS你可能不知道的技巧
- DHCP, Dynamic Host Configuration Protocol
- 字符串的大小写全排列
- 美丽的油画 codeforces 651B
- 387. First Unique Character in a String
- 解决yoeman yo命令的权限问题 Error: EACCES, permission denied
- java中的String类常量池
- 第二代增强cmod
- 数据结构上机测试2-1:单链表操作A
- 不用iframe实现在一个页面内加载另一个页面
- css3实现文本指定行数,超出部分省略号代替
- 数组两端取数
- 【JZOJ junior 2059】 稀有逛超市