91 找到字串中所有字母的異位詞

2021-09-02 23:32:50 字數 1064 閱讀 8894

題目描述

給定乙個字串 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」 的字母異位詞。

一次性擼出來的**,寫出來直接跑出來的,不得不說還是思維重要,忽略執行的效率

class solution else 

}for (int j1 = 0; j1 < len2; j1++) else

}boolean flag = false;

for (int j3 = 0; j3 < 52; j3++)

}if(!flag)

result.add(i);

}return result;

}}

排行靠前的**

class solution 

while(true)

}

if(flag)list.add(k-end);

if(k==chs.length)break;

sums[chs[k-end]]--;

sums[chs[k]]++;

k++;

}return list;

}}

找到字串中所有字母異位詞

給定乙個字串 s 和乙個非空字串 p,找到 s 中所有是 p 的字母異位詞的子串,返回這些子串的起始索引。字串只包含小寫英文本母,並且字串 s 和 p 的長度都不超過 20100。說明 字母異位詞指字母相同,但排列不同的字串。不考慮答案輸出的順序。示例 1 輸入 s cbaebabacd p abc...

找到字串中所有字母異位詞

描述 給定乙個字串 s 和乙個非空字串 p,找到 s 中所有是 p 的字母異位詞的子串,返回這些子串的起始索引。字串只包含小寫英文本母,並且字串 s 和 p 的長度都不超過 20100。說明 字母異位詞指字母相同,但排列不同的字串。不考慮答案輸出的順序。示例 1 輸入 s cbaebabacd p ...

438 找到字串中所有字母異位詞

給定乙個字串 s 和乙個非空字串 p,找到 s 中所有是 p 的字母異位詞的子串,返回這些子串的起始索引。字串只包含小寫英文本母,並且字串 s 和 p 的長度都不超過 20100。說明 字母異位詞指字母相同,但排列不同的字串。不考慮答案輸出的順序。示例 1 輸入 s cbaebabacd p abc...