登 录
空间换时间做法
#include <iostream> #include <string> using namespace std; bool compare(string Src, string Des) { size_t SrcSize = Src.size(); size_t DesSize = Des.size(); if (SrcSize <= DesSize) { cout << "false" << endl; return false; } string Temp = Src + Src; size_t TempSize = Temp.size(); for (size_t i=0; i<=TempSize; i++) { if (Temp[i] == Des[0]) { for (size_t j = i,k = 0; j<=TempSize+i; j++,k++) { if (Temp[j]!=Des[k]) { break; } cout << "true" << endl; return true; } } } cout << "false" << endl; return false; } void main() { string s1("AABCDABCDABCDABCDABCDABCDABCDABCDABCDABCDABCDABCDABCDABCDABCDABCDABCDABCDABCDABCDABCDABCDABCDAA"); string s2("CDAA"); compare(s1,s2); }
抱歉!评论已关闭.