給定乙個字串,找到它的第乙個不重複的字元,並返回它的索引。如果不存在,則返回 -1。
案例:
s = 「leetcode」注意事項:您可以假定該字串只包含小寫字母。返回 0.
s = 「loveleetcode」,
返回 2.
整體思路還是先統計然後查詢。
第一步:
新建乙個長度為26的陣列,存放字母a-z出現的次數,然後遍歷字串統計出這些次數。
第二步:
我們的目標是找到第乙個出現次數為1的字母,因此需要在遍歷一遍字串,每遍歷乙個字母就看一下陣列中他的出現次數是不是1呀?如果是1的話,說明找到了。
複雜度:
時間複雜度:o(n)
空間複雜度:o(n)
**實現:
public int firstuniqchar(string s)
int a = new int[26];
for (int i = 0;i < n;i++)
for (int i = 0;i < n;i++)
}return -1;
}
LeetCode387 字串中的第乙個唯一字元
給定乙個字串,找到它的第乙個不重複的字元,並返回它的索引。如果不存在,則返回 1。案例 s leetcode 返回 0.s loveleetcode 返回 2.注意事項 您可以假定該字串只包含小寫字母。思路 雜湊?利用陣列下標記錄字母出現次數,另外建立乙個臨時陣列記錄各個字元首次出現的位置 int ...
leetcode 387 字串中第乙個唯一字元
給定乙個字串,找到它的第乙個不重複的字元,並返回它的索引。如果不存在,則返回 1。案例 s leetcode 返回 0.s loveleetcode 返回 2.注意事項 您可以假定該字串只包含小寫字母 class solution object def firstuniqchar self,s ty...
Leetcode 387 字串中的第乙個唯一字元
題目描述 給定乙個字串,找到它的第乙個不重複的字元,並返回它的索引。如果不存在,則返回 1。案例 s leetcode 返回 0.s loveleetcode 返回 2.注意事項 您可以假定該字串只包含小寫字母。解法 通常定義乙個長度為26的陣列,陣列的每一位代表乙個字母abcd.z 其中陣列中的值...