leetcode初级算法字符串3 字符串中的第一个唯一字符
2018-07-24 15:06
267 查看
题目:
给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。
案例:
s = "leetcode" 返回 0. s = "loveleetcode", 返回 2.
这个题不会看的网上....
因为只有26个字母,所以开一个26大的数组就可以
第一次循环,扫描一遍字符串把,遇见一种字母就把这种字母的权值加一
第二次循环,扫描一遍字符串,判断这个位置上字母的权值是不是1,不是就return这个位置。
好像叫什么hash表
阅读更多import java.util.Arrays;
class Solution {
public int firstUniqChar(String s) {
int[] table=new int [26];
int size=s.length();
for(int i=0;i<size;i++)
{
table[s.charAt(i)-'a']++;
}
for(int i=0;i<size;i++)
{
if(table[s.charAt(i)-'a']==1)
return i;
}
return -1;
}
}
相关文章推荐
- 【初级算法】14. 字符串中的第一个唯一字符
- LeetCode 387 字符串中的第一个唯一字符【简单】
- [Leetcode] 387. 字符串中的第一个唯一字符 java hashmap与ASCII码
- 【leetcode】 字符串中的第一个唯一字符
- LeetCode 387. First Unique Character in a String (字符串中的第一个唯一字符)
- [LeetCode] 387. First Unique Character in a String 字符串的第一个唯一字符
- leetcode-字符串中的第一个唯一字符
- 微软算法100题17 字符串中找到第一个只出现一次的字符
- 算法之字符串选出第一个只出现一次的字符
- 实现一个算法来判断一个字符串中的字符是否唯一(即没有重复).不能使用额外的数据结构。 (即只使用基本的数据结构)
- 算法--06谷歌面试:字符串中第一个只出现一次的字符(Java实现)
- 每日一道算法题:在一个字符串中找到第一个只出现一次的字符。如输入abaccdeff,则输出b。
- [LeetCode] First Unique Character in a String 字符串第一个不同字符
- 算法 - 从字符串中找到第一个非重复字符
- 数据结构——算法之(007)(在一个字符串中找到第一个只出现一次的字符)
- 算法练习:判断一个字符串中的字符是否唯一(只用基本数据结构)
- 实现一个算法检测字符串是否为唯一字符
- 对于一个字符串,请设计一个高效算法,找到第一次重复出现的字符。 给定一个字符串(不一定全为字母)A及它的长度n。请返回第一个重复出现的字符。保证字符串中有重复字符,字符串的长度小于等于500。
- 算法学习七----在一个字符串中找到第一个只出现一次的字符
- 算法与数据结构面试题(21)-在一个字符串中找到第一个只出现一次的字符