LeetCode 438. 找到字符串中所有字母异位词(滑动窗口)
生活随笔
收集整理的這篇文章主要介紹了
LeetCode 438. 找到字符串中所有字母异位词(滑动窗口)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1. 題目
給定一個字符串 s 和一個非空字符串 p,找到 s 中所有是 p 的字母異位詞的子串,返回這些子串的起始索引。
字符串只包含小寫英文字母,并且字符串 s 和 p 的長度都不超過 20100。
說明: 字母異位詞指字母相同,但排列不同的字符串。 不考慮答案輸出的順序。示例 1: 輸入: s: "cbaebabacd" p: "abc" 輸出: [0, 6] 解釋: 起始索引等于 0 的子串是 "cba", 它是 "abc" 的字母異位詞。 起始索引等于 6 的子串是 "bac", 它是 "abc" 的字母異位詞。示例 2: 輸入: s: "abab" p: "ab" 輸出: [0, 1, 2] 解釋: 起始索引等于 0 的子串是 "ab", 它是 "ab" 的字母異位詞。 起始索引等于 1 的子串是 "ba", 它是 "ab" 的字母異位詞。 起始索引等于 2 的子串是 "ab", 它是 "ab" 的字母異位詞。來源:力扣(LeetCode)
鏈接:https://leetcode-cn.com/problems/find-all-anagrams-in-a-string
著作權歸領扣網絡所有。商業轉載請聯系官方授權,非商業轉載請注明出處。
2. 解題
- 滑動窗口,對字符串進行計數,滑動一位更新計數,跟p的計數進行比較
16 ms 8.6 MB
總結
以上是生活随笔為你收集整理的LeetCode 438. 找到字符串中所有字母异位词(滑动窗口)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: LeetCode 811. 子域名访问计
- 下一篇: LeetCode 697. 数组的度