原题网址:http://www.lintcode.com/zh-cn/problem/compare-strings/
比较两个字符串A和B,确定A中是否包含B中所有的字符。字符串A和B中的字符都是 大写字母
注意事项
在 A 中出现的 B 字符串里的字符不需要连续或者有序。
样例
给出 A = "ABCD"
B = "ACD"
,返回 true
给出 A = "ABCD"
B = "AABC"
, 返回 false
标签
1 #include <iostream>
2 #include <vector>
3 #include <math.h>
4 #include <string>
5 using namespace std;
6
7
8 bool compareStrings(string &A, string &B)
9 {
10 int sizeA=A.size();
11 int sizeB=B.size();
12 if (sizeA<sizeB)
13 {
14 return false;
15 }
16
17 vector<bool> BisInA(sizeB,false);
18 string a=A;
19 for (int i=0;i<sizeB;i++)
20 {
21 for (int j=0;j<sizeA;j++)
22 {
23 if (a[j]==B[i])
24 {
25 BisInA[i]=true;
26 a[j]='a';
27 break;
28 }
29 }
30 }
31 for (int k=0;k<sizeB;k++)
32 {
33 if (BisInA[k]==false)
34 {
35 return false;
36 }
37 }
38 return true;
39 }
参考:
1 https://blog.csdn.net/lbf8023/article/details/47092685