刷算法題:
第一遍:1.看5分鐘,沒思路看題解
2.通過題解改進自己的解法,并且要寫每行的注釋以及自己的思路。
3.思考自己做到了題解的哪一步,下次怎么才能做對(總結方法)
4.整理到自己的自媒體平臺。
5.再刷重復的類似的題目,根據時間和任務安排刷哪幾個板塊
6.用c++語言 都刷過一遍了 就刷中等
一.題目
給定一個字符串?s
?,找到?它的第一個不重復的字符,并返回它的索引?。如果不存在,則返回?-1
?。
示例 1:
輸入: s = "leetcode" 輸出: 0
示例 2:
輸入: s = "loveleetcode" 輸出: 2
示例 3:
輸入: s = "aabb" 輸出: -1
提示:
1 <= s.length <= 105
s
?只包含小寫字母
二、反思
1.自己的解法
class Solution {
public:int firstUniqChar(string s) {unordered_map<char,int> count;for(char c:s){count[c]++;}for(int i = 0; i < s.size(); i++){if(count[s[i]] == 1){return i;}}return -1;}
};
2.題目的解法?
2
?3.思路的異同
感覺官方的其他題解沒有這個這么直觀,偷個懶不看了。
三.進步的地方
隊列的題就刷到這了,接下來就是棧了,之前也遇到過,應該能快很多。?