1. 程式人生 > >swift 字串中的第一個唯一字元 - LeetCode

swift 字串中的第一個唯一字元 - LeetCode

給定一個字串,找到它的第一個不重複的字元,並返回它的索引。如果不存在,則返回 -1。

案例:

s = "leetcode"

返回 0.

s = "loveleetcode",

返回 2.

 

注意事項:您可以假定該字串只包含小寫字母。

class Solution {
    func firstUniqChar(_ s: String) -> Int {
        var a = [Int](repeating: 0, count: 26)
        for i in s.unicodeScalars {
            let index = Int(i.value - 97)
            a[index] = a[index] + 1
        }
        

        for (i, character) in s.unicodeScalars.enumerated() {
            let index = Int(character.value - 97)
            if a[index] == 1 {
                return i
            }

        }
        return -1
        
    }
}