684. 缺少的字符串分解到vector中借助find函数

给出两个字符串,你需要找到缺少的字符串. 样例

给一个字符串 str1 = This is an example, 给出另一个字符串 str2 = is example
返回 ["This", "an"]

分解到vector中借助find函数

先把两个字符串都分解到vector中,以空格为标志,然后在借助find函数来找出两个vector中不同的单词。

 vector<string> missingString(string str1, string str2) 
    {
        if(str1.size()<str2.size())
            swap(str1,str2);             //保证str1是大的,最后是遍历s1到s2里去找
            
        vector<string> s1;
        vector<string> s2;
        vector<string> res;
        
        string tmp;
        
        for(auto ss:str1)
        {
            if(!isspace(ss))
                tmp+=ss;
            else
            {
                if(!tmp.empty())
                {
                s1.push_back(tmp);
                tmp.clear();
                }
            }
        }
        if(!tmp.empty())
        {
            s1.push_back(tmp);
            tmp.clear();
        }
        
          for(auto ss:str2)
        {
            if(!isspace(ss))
                tmp+=ss;
            else
            {
                if(!tmp.empty())
                {
                s2.push_back(tmp);
                tmp.clear();
                }
            }
        }
        if(!tmp.empty())
        {
            s2.push_back(tmp);
            tmp.clear();
        }
        
        for(auto ss:s1)
        {
            if(find(s2.begin(),s2.end(),ss)==s2.end())
            {
                res.push_back(ss);
            }
        }
        return res;
           // Write your code here
    }

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏黑白安全

关于PHP语言在内存中的分配(堆和栈的区别)

本文以PHP语言为例来分析计算机中各段存储区的区别,代码段、堆空间段、代码段、初始化静态常量段。

34420
来自专栏C语言及其他语言

【每日一题】问题 1195: 去掉双斜杠注释

输入数据中含有一些符合C++语法的代码行(每行代码不超过200个字符)。需要说明的是,为了方便编程,规定双斜杠注释内容不含有双引号,源程序中没空行。

9820
来自专栏python3

python字符串

1.    S.find(substr,[start,[end]])    返回S中出现substr的第一个字母的标号,如果S中没有substr则返回-1,st...

11620
来自专栏老司机的技术博客

人人都能学会的python编程教程10:调用函数

要调用一个函数,需要知道函数的名称和参数,比如求绝对值的函数abs,只有一个参数。

971130
来自专栏GreenLeaves

Jquery 遍历数组之grep()方法介绍

grep()方法用于数组元素过滤筛选。 grep(array,callback,boolean);方法参数介绍。 array   ---待处理数组 callba...

20150
来自专栏开发与安全

从零开始学C++之异常(三):异常与继承、异常与指针、异常规格说明

 一、异常与继承 如果异常类型为C++的类,并且该类有其基类,则应该将派生类的错误处理程序放在前面,基类的错误处理程序放在后面 #include <iost...

19500
来自专栏陈树义

如何唯一确定一个 Java 类?

今天偶然想起之前和朋友讨论过的一个问题:如何唯一确定一个 Java 类?我相信大多数朋友遇到这个问题的回答都是:类的全路径呗。但事实上,唯一确定一个 Java ...

25930
来自专栏淡定的博客

python入门基础语法总结

11230
来自专栏nnngu

018 final 关键字的用途

final关键字的含义 final在Java中是一个保留的关键字,可以声明成员变量、方法、类以及本地变量。一旦你将引用声明作final,你将不能改变这个引用了,...

37460
来自专栏python3

python 函数

函数能提高应用的模块性,和代码的重复利用率。你已经知道Python提供了许多内建函数,比如print()。但你也可以自己创建函数,这被叫做用户自定义函数。

12610

扫码关注云+社区

领取腾讯云代金券