午夜视频在线网站,日韩视频精品在线,中文字幕精品一区二区三区在线,在线播放精品,1024你懂我懂的旧版人,欧美日韩一级黄色片,一区二区三区在线观看视频

分享

?LeetCode刷題實(shí)戰(zhàn)387:字符串中的第一個(gè)唯一字符

 程序IT圈 2021-09-21
算法的重要性,我就不多說了吧,想去大廠,就必須要經(jīng)過基礎(chǔ)知識(shí)和業(yè)務(wù)邏輯面試+算法面試。所以,為了提高大家的算法能力,這個(gè)公眾號(hào)后續(xù)每天帶大家做一道算法題,題目就從LeetCode上面選 !

今天和大家聊的問題叫做 字符串中的第一個(gè)唯一字符,我們先來看題面:
https:///problems/lexicographical-numbers/

Given a string s, find the first non-repeating character in it and return its index. If it does not exist, return -1.

給定一個(gè)字符串,找到它的第一個(gè)不重復(fù)的字符,并返回它的索引。如果不存在,則返回 -1。

示例

s = "leetcode"
返回 0

s = "loveleetcode"
返回 2

解題

主要思路:
先統(tǒng)計(jì)字符串中,每個(gè)字符出現(xiàn)的次數(shù)。
然后依次遍歷找到第一個(gè)次數(shù)為1的字符。

class Solution {
public:
    int firstUniqChar(string s) {
        map<char, int> m;
        for(int i = 0; i < s.length(); i ++){
            m[s[i]] ++;
        }
        for(int i = 0; i < s.length(); i ++) {
            if(m[s[i]] == 1) return i;
        }
        return -1;
    }
};

好了,今天的文章就到這里,如果覺得有所收獲,請(qǐng)順手點(diǎn)個(gè)在看或者轉(zhuǎn)發(fā)吧,你們的支持是我最大的動(dòng)力 。

上期推文:

LeetCode1-380題匯總,希望對(duì)你有點(diǎn)幫助!

LeetCode刷題實(shí)戰(zhàn)381:O(1) 時(shí)間插入、刪除和獲取隨機(jī)元素

LeetCode刷題實(shí)戰(zhàn)382:鏈表隨機(jī)節(jié)點(diǎn)

LeetCode刷題實(shí)戰(zhàn)383:贖金信

LeetCode刷題實(shí)戰(zhàn)384:打亂數(shù)組

LeetCode刷題實(shí)戰(zhàn)385:迷你語(yǔ)法分析器

LeetCode刷題實(shí)戰(zhàn)386:字典序排數(shù)

    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多