非常简单,代码如下:
#include <iostream>
#include <string>
using namespace std;
bool AisSubStringOfB (string a, string b) {
if (a.size () > b.size ()) return false;
else {
for (int i = 0; i <= b.size () - a.size (); i++) {
if (a [0] == b [i]) {
for (int j = i + 1, k = 1; k < a.size (); j++, k++) {
if (a [k] == b [j]) {
if (k == a.size () - 1) return true;
continue;
} else {
break;
}
}
}
}
}
return false;
}
int main ()
{
/*
string a, b;
//cin >> a;
//cin >> b;
a = "badd";
b = "abccbadd";
if (AisSubStringOfB (a, b)) cout << "A是B的子串" << endl;
else cout << "A不是B的子串" << endl;
/**/
string s="golden global view";
string r="view";
if (s.find(r) < s.length())
{
cout<<"s中包版含r"<<endl;
}
else
{
cout<<"s中不包权含r"<<endl;
}
}
手写了一个代码手写的算法,又使用string头文件自带的find函数寻找子串。