LeetCode|387. 字符串中的第一個惟一字符


題目描述

  • 等級: 簡單

給定一個字符串,找到它的第一個不重複的字符,並返回它的索引。若是不存在,則返回 -1。.net

案例:

s = "leetcode"
返回 0.

s = "loveleetcode",
返回 2.

注意事項:您能夠假定該字符串只包含小寫字母。code

思路

對於字符串和Hash表的考察。 首先遍歷一遍字符串中字符,用Hash表存儲字符與其出現的次數。 再遍歷一遍字符串中的字符,當碰到第一個出現次數爲1的字符時,返回響應的索引位置。 若是都沒有,返回-1。cdn

答案

func firstUniqChar(s string) int {
    count := map[int32]int{}
	for _, v := range s {
		oldCount := count[v]
		count[v] = 1   oldCount
	}
	for k, v := range s {
		if count[v]==1{
			return k
		}
	}
	return -1
}

結果

387.png


tencent.jpg )blog

相關文章
相關標籤/搜索