微软,Google面试题 (13) —— 第一个只出现一次的字符
2010-08-23 23:01
363 查看
题目:在一个字符串中找到第一个只出现一次的字符。如输入abaccdeff,则输出b。
解法一:常规解法。遍历字符串,访问到每一个字符时,检查后面有没有相同的字符。没有则输出。这种做法的时间复杂度是O(n^2)。
解法二:利用hashtable。首先为建立一个256大小(ASCII字符的最大值)的hashtable。遍历一次字符串,将每个字符串出现的次数存放在hashtable之中。再遍历一次hashtable,找到第一个次数为1的。
解法一:常规解法。遍历字符串,访问到每一个字符时,检查后面有没有相同的字符。没有则输出。这种做法的时间复杂度是O(n^2)。
解法二:利用hashtable。首先为建立一个256大小(ASCII字符的最大值)的hashtable。遍历一次字符串,将每个字符串出现的次数存放在hashtable之中。再遍历一次hashtable,找到第一个次数为1的。
相关文章推荐
- 程序员面试题精选100题(13)-第一个只出现一次的字符[算法]
- 程序员面试题精选100题(13)-第一个只出现一次的字符[算法]
- 程序员面试题精选(13):第一个只出现一次的字符
- 字符串中第一个只出现一次的字符——剑指offer面试题40
- 《剑指Offer》面试题:找到第一个只出现一次的字符
- 面试题 35: 第一个只出现一次的字符
- [C语言常见面试题]查询一个字符串中第一个只出现一次的字符,要求时间复杂度为O(1)
- 剑指offer 面试题35—第一个只出现一次的字符
- 剑指offer 面试题35 第一个只出现一次的字符
- 程序员面试题精选100题(13)-第一个只出现一次的字符[算法]
- 微软面试100题目之17 :在一个字符串中找到第一个只出现一次的字符。
- 微软面试100题之17题:在一个字符串中找到第一个只出现一次的字符
- Google笔试题:哈希表的一个意想不到的应用--在字符串中查找第一个只出现一次的字符
- 剑指offer-面试题35-第一个只出现一次的字符
- 剑指Offer面试题35(java版):第一个只出现一次的字符
- 面试题35:第一个只出现一次的字符
- 面试题35:第一个只出现一次的字符
- 【面试题】剑指Offer-35-第一个只出现一次的字符
- 15. Google面试题:在一个字符串中找到第一个只出现一次的字符。如输入abaccdeff,则输出b
- 程序员面试题精选100题(13)-第一个只出现一次的字符