LeetCode-387-字符串中的第一個(gè)唯一字符

題目描述:給定一個(gè)字符串,找到它的第一個(gè)不重復(fù)的字符,并返回它的索引。如果不存在,則返回 -1。
示例說(shuō)明請(qǐng)見(jiàn)LeetCode官網(wǎng)。
來(lái)源:力扣(LeetCode) ??
鏈接:https://leetcode-cn.com/problems/first-unique-character-in-a-string/ ??
著作權(quán)歸領(lǐng)扣網(wǎng)絡(luò)所有。商業(yè)轉(zhuǎn)載請(qǐng)聯(lián)系官方授權(quán),非商業(yè)轉(zhuǎn)載請(qǐng)注明出處。
解法一:遍歷字符串
s為null或者空字符串,直接返回-1。
如果s
當(dāng)s的長(zhǎng)度大于1,聲明一個(gè)LinkedHashMap用來(lái)記錄每個(gè)字符出現(xiàn)的次數(shù),然后遍歷s的每一個(gè)字符,將每一個(gè)字符和相應(yīng)出現(xiàn)的次數(shù)放入LinkedHashMap中。
然后按順序遍歷LinkedHashMap,判斷是否存在value為1即只出現(xiàn)過(guò)一次的字符,如果存在,返回在s中的索引位。如果遍歷完發(fā)現(xiàn)不存在,則返回-1。
【每日寄語(yǔ)】 閃光的未必都是金子,而沉默的也不一定就是石頭。