• 编程之美 3.1 字符串移位包含问 复杂度(O(N*K)


    分享关于编程之美3.1自己编写的代码,很简单。

    s2.沿着s1匹配(循环匹配,利用%Length技巧),匹配上,返回true。

     1 //BOP3.1
     2 
     3 char src[] = "AABBCD";//s1,
     4 char des[] = "DAAB";//s2
     5 
     6 bool CyclicShift(char des[],char src[])
     7 {
     8     int LenS = strlen(src);
     9     int LenD = strlen(des);
    10     bool flag = true;
    11     for(int i =0;i<LenS;i++)
    12     {
    13         flag = true;
    14         for(int j=0;j<LenD;j++)
    15         {
    16             if(des[j] != src[(i+j)%LenS])
    17             {
    18                 flag = false;//标记没有满足循环移位
    19                 break;//如果不满足循环移位,则跳出。
    20 
    21             }
    22         }
    23         if(flag == true)
    24             return true;
    25     }
    26     return false;
    27 
    28 }
    29 
    30 void main()
    31 {
    32     cout<<CyclicShift(des,src);
    33 }
  • 相关阅读:
    vue 短期时间
    使用moment.js写一个倒计时
    使用moment.js
    js 共用文件内容应用
    什么是闭包?闭包的优缺点?
    卧龙阶段
    音阶
    初步理解1=C
    认识简谱的构造,唱名,音名

  • 原文地址:https://www.cnblogs.com/Dzhouqi/p/3618301.html
Copyright © 2020-2023  润新知