First Unique Character in a String
来源:互联网 发布:防辐射眼镜 知乎 编辑:程序博客网 时间:2024/05/20 18:41
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.
思路:用hashmap统计,再扫一遍;
public class Solution { public int firstUniqChar(String s) { if(s == null || s.length() ==0){ return -1; } HashMap<Character, Integer> hashmap = new HashMap<Character, Integer>(); for(int i=0; i<s.length(); i++){ char c = s.charAt(i); if(hashmap.containsKey(c)){ hashmap.put(c, hashmap.get(c)+1); } else { hashmap.put(c, 1); } } for(int i=0; i<s.length(); i++){ char c = s.charAt(i); if(hashmap.get(c) == 1){ return i; } } return -1; }}思路2:用array来统计,节省空间,并且快点。
public class Solution { public int firstUniqChar(String s) { if(s == null || s.length() ==0){ return -1; } int[] count = new int[256]; for(int i=0; i<s.length(); i++){ int index = s.charAt(i)-'a'; count[index]++; } for(int i=0; i<s.length(); i++){ int index = s.charAt(i)-'a'; if(count[index] == 1){ return i; } } return -1; }}
0 0
- first unique character in a string
- 152.First Unique Character in a String
- [Leetcode]First Unique Character in a String
- 387. First Unique Character in a String
- First Unique Character in a String
- LeetCode: First Unique Character in a String
- 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
- LeetCode-First Unique Character in a String
- leetcode---First Unique Character in a String
- [387] First Unique Character in a String
- leetcode:First Unique Character in a String
- LeetCode387. First Unique Character in a String
- leetcode_387 First Unique Character in a String
- First Unique Character in a String
- #128 Hash Function
- 如何正确地写出单例模式
- 【数据结构】线性表之顺序表的创建
- Java设计模式透析之 —— 模板方法(Template Method)
- Shell for SSH
- First Unique Character in a String
- JS创建对象的几种方式
- JAVA生成随机码程序
- C#在一台客户端进行了某个操作以后如何让其他不同的客户端如何实现相同的操作(二)
- 51nod 1284 2 3 5 7的倍数
- Universal-Image-Loader源码阅读(16)-memory/impl/FuzzyKeyMemoryCache
- BZOJ 1030 [JSOI2007]文本生成器
- java web 纯前段实现浏览网页下载
- [webkit移动开发笔记]之兼容iPhone4和iPhone5的方法