leetcode 字符串的排列

简介: 给你两个字符串 s1 和 s2 ,写一个函数来判断 s2 是否包含 s1 的排列。如果是,返回 true ;否则,返回 false 。
classSolution {
public:
boolcheckInclusion(strings1, strings2) {
intn=s1.length(), m=s2.length();
if (n>m) {
returnfalse;
        }
vector<int>cnt1(26), cnt2(26);
for (inti=0; i<n; ++i) {
++cnt1[s1[i] -'a'];
++cnt2[s2[i] -'a'];
        }
if (cnt1==cnt2) {
returntrue;
        }
for (inti=n; i<m; ++i) {
++cnt2[s2[i] -'a'];
--cnt2[s2[i-n] -'a'];
if (cnt1==cnt2) {
returntrue;
            }
        }
returnfalse;
    }
};
相关文章
|
18天前
|
存储 算法 安全
【刷题】 leetcode 面试题 01.06 字符串压缩
来看效果: 非常好!!!过啦!!!
32 5
【刷题】 leetcode 面试题 01.06 字符串压缩
|
18天前
leetcode代码记录(删除字符串中的所有相邻重复项
leetcode代码记录(删除字符串中的所有相邻重复项
14 0
|
18天前
|
算法
代码随想录算法训练营第五十五天 | LeetCode 583. 两个字符串的删除操作、72. 编辑距离、编辑距离总结
代码随想录算法训练营第五十五天 | LeetCode 583. 两个字符串的删除操作、72. 编辑距离、编辑距离总结
29 1
|
18天前
|
存储 编译器 Linux
标准库中的string类(中)+仅仅反转字母+字符串中的第一个唯一字符+字符串相加——“C++”“Leetcode每日一题”
标准库中的string类(中)+仅仅反转字母+字符串中的第一个唯一字符+字符串相加——“C++”“Leetcode每日一题”
|
18天前
|
机器学习/深度学习 索引
【力扣】387. 字符串中的第一个唯一字符
【力扣】387. 字符串中的第一个唯一字符
|
18天前
【力扣】28. 找出字符串中第一个匹配项的下标
【力扣】28. 找出字符串中第一个匹配项的下标
|
18天前
|
存储
leetcode2744. 最大字符串配对数目
leetcode2744. 最大字符串配对数目
19 0
|
18天前
|
机器学习/深度学习 NoSQL Shell
力扣刷题-翻转字符串
力扣刷题-翻转字符串
17 1
|
18天前
|
算法 Java
[Java·算法·简单] LeetCode 28. 找出字符串中第一个匹配项的下标 详细解读
[Java·算法·简单] LeetCode 28. 找出字符串中第一个匹配项的下标 详细解读
30 0