题目描述:在一个字符串(1<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置。如果字符串为空,返回-1。
看到这个题,第一个反应可能是按顺序遍历字符串,对字符串中每一个字符,都去看它的后面有没有和它一样的字符。但是这种方法太费时间,所以要换一种思路。
如果是建立一个HashMap,把key设为字符串中每个字符,value设为每个字符出现的次数,那么我们只需要对字符串进行一次遍历,用字符串中每个字符作为key,去找value为1的那个字符就可以了。
题目描述:在一个字符串(1<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置。如果字符串为空,返回-1。
看到这个题,第一个反应可能是按顺序遍历字符串,对字符串中每一个字符,都去看它的后面有没有和它一样的字符。但是这种方法太费时间,所以要换一种思路。
如果是建立一个HashMap,把key设为字符串中每个字符,value设为每个字符出现的次数,那么我们只需要对字符串进行一次遍历,用字符串中每个字符作为key,去找value为1的那个字符就可以了。