博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
First Unique Character in a String
阅读量:5253 次
发布时间:2019-06-14

本文共 1256 字,大约阅读时间需要 4 分钟。

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.

1 class Solution { 2 public: 3     int firstUniqChar(string s) { 4         int table[26] = {
0}; 5 for (char ch : s) 6 table[ch - 'a']++; 7 8 for (int i = 0; i < s.size(); i++) 9 if (table[s[i] - 'a'] == 1) return i;10 11 return -1;12 }13 };

 

1 class Solution { 2 public: 3     int firstUniqChar(string s) { 4         unordered_map
um; 5 for (int i = 0; i < s.size(); i++) { 6 if (!um[s[i]] && s.find(s[i], i + 1) == s.npos) return i; 7 um[s[i]] = true; 8 } 9 return -1;10 }11 };

 

1 class Solution { 2 public: 3     int firstUniqChar(string s) { 4         unordered_map
> um; 5 for (int i = 0; i < s.size(); i++) 6 um[s[i]].push_back(i); 7 8 int result = INT_MAX; 9 for (auto item : um) {10 if (item.second.size() == 1) result = min(result, item.second[0]);11 }12 return result == INT_MAX ? -1 : result;13 }14 };

 

转载于:https://www.cnblogs.com/amazingzoe/p/5995087.html

你可能感兴趣的文章
electron入门心得
查看>>
格而知之2:UIView的autoresizingMask属性探究
查看>>
Spring3.0 AOP 具体解释
查看>>
我的Hook学习笔记
查看>>
EasyUI DataGrid 中字段 formatter 格式化不起作用
查看>>
海量数据存储
查看>>
js中的try/catch
查看>>
[导入]玫瑰丝巾!
查看>>
自动从网站上面下载文件 .NET把网站图片保存到本地
查看>>
【识记】 域名备案
查看>>
STL uva 11991
查看>>
MY SQL的下载和安装
查看>>
自定义OffMeshLink跳跃曲线
查看>>
寄Android开发Gradle你需要知道的知识
查看>>
简述spring中常有的几种advice?
查看>>
学习Redux之分析Redux核心代码分析
查看>>
ABAP 创建和调用WebService
查看>>
C# 实例化顺序
查看>>
CSS水平垂直居中总结
查看>>
委托又给我惹麻烦了————记委托链的取消注册、获取返回值
查看>>