真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

劍指offer:第一個(gè)只出現(xiàn)一次的字符

題目描述
在一個(gè)字符串(0<=字符串長(zhǎng)度<=10000,全部由字母組成)中找到第一個(gè)只出現(xiàn)一次的字符,并返回它的位置, 如果沒(méi)有則返回 -1(需要區(qū)分大小寫).

創(chuàng)新互聯(lián)基于成都重慶香港及美國(guó)等地區(qū)分布式IDC機(jī)房數(shù)據(jù)中心構(gòu)建的電信大帶寬,聯(lián)通大帶寬,移動(dòng)大帶寬,多線BGP大帶寬租用,是為眾多客戶提供專業(yè)服務(wù)器托管報(bào)價(jià),主機(jī)托管價(jià)格性價(jià)比高,為金融證券行業(yè)遂寧服務(wù)器托管,ai人工智能服務(wù)器托管提供bgp線路100M獨(dú)享,G口帶寬及機(jī)柜租用的專業(yè)成都idc公司。

# -*- coding: utf-8 -*-
# @Time         : 2019-07-12 9:40
# @Author       : Jayce Wong
# @ProjectName  : job
# @FileName     : firstNotRepeatingChar.py
# @Blog         : https://blog.51cto.com/jayce1111
# @Github       : https://github.com/SysuJayce

from collections import defaultdict

class Solution:
    """
    由于這道題目和次數(shù)有關(guān),因此有兩種解法。
    解法1:
    遍歷字符串,對(duì)于當(dāng)前字符,遍歷后面的所有字符,如果出現(xiàn)了相同的字符,那么說(shuō)明這個(gè)字符出現(xiàn)次數(shù)>1
    這種解法的時(shí)間復(fù)雜度為O(n^2)

    解法2:
    維護(hù)一個(gè)哈希表,用于保存每個(gè)字符出現(xiàn)的次數(shù)。這樣,通過(guò)兩輪遍歷,第一輪統(tǒng)計(jì)每個(gè)字符的出現(xiàn)次數(shù),
    第二輪查詢每個(gè)字符的出現(xiàn)次數(shù),如果次數(shù)為1那么就返回該字符的下標(biāo)。
    這種解法的時(shí)間復(fù)雜度為O(n)
    """
    def FirstNotRepeatingChar(self, s):
        if not s:
            return -1

        # 在python中,我們可以利用默認(rèn)字典來(lái)簡(jiǎn)化代碼
        char_count = defaultdict(int)
        for c in s:
            char_count[c] += 1

        for i in range(len(s)):
            if char_count[s[i]] == 1:
                return i

新聞名稱:劍指offer:第一個(gè)只出現(xiàn)一次的字符
本文來(lái)源:http://weahome.cn/article/jjcjpg.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部