力扣題解-387. 字串中的第一個唯一字元
題目:387. 字串中的第一個唯一字元
給定一個字串,找到它的第一個不重複的字元,並返回它的索引。如果不存在,則返回 -1。
示例:
s = “leetcode”
返回 0
s = “loveleetcode”
返回 2
提示:你可以假定該字串只包含小寫字母。
來源:力扣(LeetCode)
連結:https://leetcode-cn.com/problems/first-unique-character-in-a-string
著作權歸領釦網路所有。商業轉載請聯絡官方授權,非商業轉載請註明出處。
題解
遍歷第一遍字串,利用雜湊表進行重複字元的統計;然後再遍歷一遍字串,找到第一個不重複的字元。
由於本題字串只包含小寫字母,因此可以直接利用陣列統計重複字元。
程式碼
class Solution {
public:
int firstUniqChar(string s) {
vector<int> array(26, 0);
for (auto c: s) {
array[c-'a'] += 1;
}
for (int i = 0; i< s.length(); i++) {
if(array[s[i]-'a'] == 1) {
return i;
}
}
return -1;
}
};
相關文章
- 387. 字串中的第一個唯一字元字串字元
- LeetCode 387. 字串中的第一個唯一字元 (Java)LeetCode字串字元Java
- leedcode-字串中的第一個唯一字元字串字元
- 1202-字串中的第一個唯一字元字串字元
- LeetCode-387-字串中的第一個唯一字元LeetCode字串字元
- 【leetcode 簡單】 第九十題 字串中的第一個唯一字元LeetCode字串字元
- LeetCode初級演算法之字串:387 字串中的第一個唯一字元LeetCode演算法字串字元
- 演算法-First Unique Character in a String-字串中的第一個唯一字元演算法字串字元
- 力扣題解力扣
- 力扣刷題-滑動視窗(字串)力扣字串
- 力扣之反轉字串中的單詞 III力扣字串
- 【每週例題】力扣 C++ 字串相乘力扣C++字串
- 力扣oj-字串相乘力扣字串
- Python字串刪除第一個字元常用的方法!Python字串字元
- 字元流中第一個不重複的字元字元
- 查詢字串中第一個非重複字元的3種方法字串字元
- 力扣#43 字串相乘(C++)力扣字串C++
- 力扣題解1-兩數之和力扣
- 力扣題解2-兩數相加力扣
- 劍指Offer 字元流中第一個不重複的字元字元
- 字典序的下一個排序--力扣每日一題排序力扣每日一題
- 力扣-1209. 刪除字串中的所有相鄰重複項 II力扣字串
- 我的力扣演算法1370-上升下降字串力扣演算法字串
- LeetCode 每日一題「判定字元是否唯一」LeetCode每日一題字元
- 力扣演算法題:尋找兩個正序陣列的中位數力扣演算法陣列
- Python中查詢字串某個字元最常用的方法!Python字串字元
- PHP 判斷一個字元是否在字串中PHP字元字串
- 將字串每一個單詞第一個字元設定為大寫字串字元
- 力扣 - 劍指 Offer 52. 兩個連結串列的第一個公共節點力扣
- 2.刪除字串中的某個字元。(藉助字元陣列實現)字串字元陣列
- 力扣刷題:100. 相同的樹力扣
- 20201007:力扣209週週賽題解記錄(上)力扣
- 統計字串字元個數字串字元
- 力扣題之迴文數力扣
- 第五章 字串專題 ---------------- 5.1 題解:判斷字串有無重複字元字串字元
- 力扣之兩個陣列的交集力扣陣列
- 獲得String字串中某個字元出現的次數字串字元
- JavaScript刪除字串中的指定字元JavaScript字串字元