成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

力扣(LeetCode)3

_DangJin / 3109人閱讀

摘要:示例輸入輸出解釋因?yàn)闊o(wú)重復(fù)字符的最長(zhǎng)子串是,所以其長(zhǎng)度為。請(qǐng)注意,你的答案必須是子串的長(zhǎng)度,是一個(gè)子序列,不是子串。若沒(méi)有重復(fù)元素,則區(qū)間右邊擴(kuò)大,否則區(qū)間左邊縮小。

題目地址:
https://leetcode-cn.com/probl...
題目描述:
給定一個(gè)字符串,請(qǐng)你找出其中不含有重復(fù)字符的 最長(zhǎng)子串 的長(zhǎng)度。

示例 1:

輸入: "abcabcbb"
輸出: 3
解釋: 因?yàn)闊o(wú)重復(fù)字符的最長(zhǎng)子串是 "abc",所以其長(zhǎng)度為 3。
示例 2:

輸入: "bbbbb"
輸出: 1
解釋: 因?yàn)闊o(wú)重復(fù)字符的最長(zhǎng)子串是 "b",所以其長(zhǎng)度為 1。
示例 3:

輸入: "pwwkew"
輸出: 3
解釋: 因?yàn)闊o(wú)重復(fù)字符的最長(zhǎng)子串是 "wke",所以其長(zhǎng)度為 3。
請(qǐng)注意,你的答案必須是 子串 的長(zhǎng)度,"pwke" 是一個(gè)子序列,不是子串。

解答:
利用雙指針?lè)ǎp指針維護(hù)了一個(gè)滑動(dòng)的區(qū)間,在用一個(gè)哈希表記錄這個(gè)區(qū)間里的字符及其個(gè)數(shù),對(duì)一個(gè)區(qū)間
進(jìn)行檢查,每一次這個(gè)區(qū)間沒(méi)有重復(fù)元素就跟結(jié)果比較大小來(lái)選擇是否更新結(jié)果。若沒(méi)有重復(fù)元素,則區(qū)間右邊
擴(kuò)大,否則區(qū)間左邊縮小。直至到達(dá)邊界。(需要注意的是,這里的字符不僅僅是"A"到"z",因此hash數(shù)組需要開(kāi)的大一些,來(lái)容納那些ASCII碼大的字符。)

java ac代碼:

class Solution {
    public int lengthOfLongestSubstring(String s) {
        if(s.length() == 0)return 0;
        int ans = 1;
        int[]hash = new int[200];
        hash[s.charAt(0)] = 1;
        for(int i = 0,j = 0;i <= j && j < s.length();)
        {
            boolean flag = false;
            for(int k = 0 ;k < hash.length ;k++)
                if(hash[k] > 1){flag = true;break;}
            if(!flag)
            {
                ans = Math.max(ans,j-i+1);
                j++;
                if(j < s.length())
                hash[s.charAt(j)]++;
                else break;
            }
            else
            {
                hash[s.charAt(i)]--;
                i++;
            }
            
        }
        return ans;
        
    }
}

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/73664.html

相關(guān)文章

  • 力扣(LeetCode)310

    摘要:圖因此可以成為樹(shù),在所有可能的樹(shù)中,具有最小高度的樹(shù)被稱為最小高度樹(shù)。給出這樣的一個(gè)圖,寫(xiě)出一個(gè)函數(shù)找到所有的最小高度樹(shù)并返回他們的根節(jié)點(diǎn)。因此使用一個(gè)數(shù)組代表每個(gè)節(jié)點(diǎn)的入度,若入度為就是葉子節(jié)點(diǎn)。 題目地址:https://leetcode-cn.com/probl...題目描述: 對(duì)于一個(gè)具有樹(shù)特征的無(wú)向圖,我們可選擇任何一個(gè)節(jié)點(diǎn)作為根。圖因此可以成為樹(shù),在所有可能的樹(shù)中,具有最小...

    amuqiao 評(píng)論0 收藏0
  • LeetCode天梯>Day026 反轉(zhuǎn)鏈表(遞歸法+(迭代法)雙鏈表法) | 初級(jí)算法 | Py

    摘要:關(guān)于遞歸這里提一兩點(diǎn)遞歸基本有這幾步遞歸的模板,終止條件,遞歸調(diào)用,邏輯處理。 ?作者簡(jiǎn)介:大家好,我是車神哥,府學(xué)路18號(hào)的車神? ?個(gè)人主頁(yè):應(yīng)無(wú)所住而生...

    imingyu 評(píng)論0 收藏0
  • 力扣(LeetCode)46

    摘要:題目地址題目描述給定一個(gè)沒(méi)有重復(fù)數(shù)字的序列,返回其所有可能的全排列。 題目地址:https://leetcode-cn.com/probl...題目描述:給定一個(gè)沒(méi)有重復(fù)數(shù)字的序列,返回其所有可能的全排列。 示例: 輸入: [1,2,3]輸出:[ [1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], [3,2,1]]解答:利用遞歸,我們可...

    李增田 評(píng)論0 收藏0
  • LeetCode天梯>Day031 驗(yàn)證二叉搜索樹(shù)(遞歸+中序遍歷) | 初級(jí)算法 | Pytho

    摘要:有效二叉搜索樹(shù)定義如下節(jié)點(diǎn)的左子樹(shù)只包含小于當(dāng)前節(jié)點(diǎn)的數(shù)。所有左子樹(shù)和右子樹(shù)自身必須也是二叉搜索樹(shù)。而我們二叉搜索樹(shù)保證了左子樹(shù)的節(jié)點(diǎn)的值均小于根節(jié)點(diǎn)的值,根節(jié)點(diǎn)的值均小于右子樹(shù)的值,因此中序遍歷以后得到的序列一定是升序序列。 ...

    Genng 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<