zoukankan      html  css  js  c++  java
  • 算法题11 字符串的所有对称子串

    题目

      给定一个字符串,求其中所有的对称子串

    分析

      对称字符串无非两种情况,一是以1个字符为中心对称,如"abcba",一是完全对称,如"abccba"。对于字符串对称的判断,从内往外查找比较方便

    代码 

     1 int SymmtricSubStrings(char* str,vector<string>& vSubStrs)
     2 {
     3     if (str==NULL)
     4     {
     5         return -1;
     6     }
     7     string s=str;
     8 
     9     //遍历字符串
    10     char* p=str+1;
    11     while (*p!='')
    12     {
    13         //odd nums
    14         char* pre=p-1;
    15         char* next=p+1;
    16         int len=1;
    17         while (pre>=str&&*next!=''&&*pre==*next)
    18         {
    19             len=len+2;
    20             pre--;
    21             next++;
    22         }
    23         if (len>1)
    24         {
    25             vSubStrs.push_back(s.substr(pre-str+1,len));
    26         }
    27 
    28         //even nums
    29         pre=p-1;
    30         next=p;
    31         len=0;
    32         while (pre>=str&&*next!=''&&*pre==*next)
    33         {
    34             len=len+2;
    35             pre--;
    36             next++;
    37         }
    38         if (len>1)
    39         {
    40             vSubStrs.push_back(s.substr(pre-str+1,len));
    41         }
    42 
    43         p++;
    44     }
    45 
    46     return 0;
    47 
    48 }
  • 相关阅读:
    pip3 install的时候报错timed out
    小程序经验
    require()  module.export    Object.keys()
    canvas
    弹框时出现灰色背景
    template模板的使用方法
    javascript中array常用属性方法
    封装数据请求
    wx 参数传值
    ELF文件格式分析
  • 原文地址:https://www.cnblogs.com/wangzaizhen/p/5177059.html
Copyright © 2011-2022 走看看