leetcode解題之最小覆蓋子串

2021-10-06 10:24:07 字數 763 閱讀 5244

給你乙個字串 s、乙個字串 t,請在字串 s 裡面找出:包含 t 所有字元的最小子串。

示例:輸入: s = 「adobecodebanc」, t = 「abc」 輸出: 「banc」 說明:

如果 s 中不存這樣的子串,則返回空字串 「」。 如果 s 中存在這樣的子串,我們保證它是唯一的答案。

雖然按照滑動視窗的思路最終沒有解出來,但是思路至少是對的,所以對自己來說是有進步的,下面是搬運來的,學習記錄

class

solution

int l =

0, r =-1

;int len = integer.max_value, ansl =-1

, ansr =-1

;int slen = s.

length()

;while

(r < slen)

while

(check()

&& l <= r)

if(ori.

containskey

(s.charat

(l))

)++l;}}

return ansl ==-1

?"": s.

substring

(ansl, ansr);}

public

boolean

check()

}return

true;}

}

leetcode解題之最長回文串

給定乙個包含大寫字母和小寫字母的字串,找到通過這些字母構造成的最長的回文串。在構造過程中,請注意區分大小寫。比如 aa 不能當做乙個回文字串。注意 假設字串的長度不會超過 1010。示例 1 輸入 abccccdd 輸出 7 解釋 我們可以構造的最長的回文串是 dccaccd 它的長度是 7。基本思...

Leetcode之 最小的k個數

輸入整數陣列 arr 找出其中最小的 k 個數。例如,輸入4 5 1 6 2 7 3 8這8個數字,則最小的4個數字是1 2 3 4。雜湊表,題目中給定arr.length 10000,arr i 10000,則建立乙個hash陣列記錄每個數字出現的次數,之後從hash 0 開始輸出,若hash i...

LeetCode 最小覆蓋子串

q 給你乙個字串 s 乙個字串 t,請在字串 s 裡面找出 包含 t 所有字母的最小子串。示例 輸入 s adobecodebanc t abc 輸出 banc 說明 如果 s 中不存這樣的子串,則返回空字串 如果 s 中存在這樣的子串,我們保證它是唯一的答案。a 引用 labuladong的演算法...