第一个只出现一次的字符
来源:互联网 发布:c语言数组长度最大多少 编辑:程序博客网 时间:2024/06/06 02:33
题目描述
在一个字符串(1<=字符串长度<=10000)中找到第一个只出现一次的字符,并返回它的位置
1、哈希表
class Solution {public: int FirstNotRepeatingChar(string str) { int len=str.size(); if(len<1||len>10000) return -1; int hashTable[256]={0}; for(int i=0;i<len;i++) { //if(!(str[i]>='A'&&str[i]<='Z')) // return -1; hashTable[str[i]]++; } for(int i=0;i<len;i++) { if(hashTable[str[i]]==1) { return i; } } return -1; }};
class Solution {public: int FirstNotRepeatingChar(string str) { int len=str.size(); if(len<1||len>10000) return -1; unordered_multiset<char> res; for(int i=0;i<len;i++) { //if(!(str[i]>='A'&&str[i]<='Z')) // return -1; res.insert(str[i]); } for(int i=0;i<len;i++) { if(res.count(str[i])==1) { return i; } } return -1; }};
class Solution {public: int FirstNotRepeatingChar(string str) { int len=str.size(); if(len<1||len>10000) return -1; unordered_map<char,int> res; for(int i=0;i<len;i++) { //if(!(str[i]>='A'&&str[i]<='Z')) // return -1; if(res.find(str[i])==res.end()) res[str[i]]=1; else res[str[i]]=-1; } for(int i=0;i<len;i++) { if(res[str[i]]==1) { return i; } } return -1; }};
0 0
- 第一个只出现一次的字符
- 第一个只出现一次的字符
- 第一个只出现一次的字符
- 第一个只出现一次的字符
- 第一个只出现一次的字符
- 第一个只出现一次的字符
- 第一个只出现一次的字符
- 第一个只出现一次的字符
- 第一个只出现一次的字符
- 第一个只出现一次的字符
- 第一个只出现一次的字符
- 第一个只出现一次的字符
- 第一个只出现一次的字符
- 第一个只出现一次的字符
- 第一个只出现一次的字符
- 第一个只出现一次的字符
- 第一个只出现一次的字符
- 第一个只出现一次的字符
- 自学java(5)
- Android SDK Manager安装Platform-tools
- 微信JSSDK获取当前地理位置信息
- 机房收费之附加数据库
- Lab2:Distribute Machine Learning: Computer and Storage
- 第一个只出现一次的字符
- 集合的位向量表示
- 九度OJ 1109 连通图
- Spring4.1新特性——jsonp
- Struts2工作原理
- Spring的事务传播性与隔离级别
- POJ 3635 Full Tank? (dp)
- 怎么使用CSDN的git仓库(code.csdn.net)
- Linux中常用操作命令