栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

字符串字符匹配

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

字符串字符匹配

字符串字符匹配

描述
判断短字符串S中的所有字符是否在长字符串T中全部出现。
请注意本题有多组样例输入。
数据范围:1<=len(S),len(T)<=200
进阶:时间复杂度:O(n),空间复杂度:O(n)
输入描述:
输入两个字符串。第一个为短字符串,第二个为长字符串。两个字符串均由小写字母组成。

输出描述:
如果短字符串的所有字符均在长字符串中出现过,则输出字符串"true"。否则输出字符串"false"。

示例1
输入:
bc
abc
apgmlivuembu
tyjmrcuneguxmsqwjslqvfmw
bca
abc

输出:
true
false
true

说明:
第一组样例:
bc
abc
其中abc含有bc,输出"true"
第二组样例,上面短字符串的a就没有在下面长字符串出现,输出"false"

方法一:(暴力)
#include
#include
using namespace std;

int main(){
    string str,model;
    while(cin>>str>>model){
        bool flag0=true;
        for(int i=0;i 
复杂度分析: 

时间复杂度:
O(nm),其中n和m分别为两个字符串的长度
空间复杂度:
O(1),常数空间

方法二:(哈希)
#include
#include
using namespace std;

int main(){
    string str,model;
    while(cin>>str>>model){
        bool flag=true;
        int dict[30]={0};
        for(int i=0;i 
复杂度分析: 

时间复杂度:
O(n+m),其中n为长字符串的长度,m为短字符串长度
空间复杂度:
O(1),常数空间

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/656536.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号