zoukankan      html  css  js  c++  java
  • 最大对称字符串的长度

    输入一个字符串,输出该字符串中对称的子字符串的最大长度。比如输入字符串“google”,由于该字符
    串里最长的对称子字符串是“goog”,因此输出4。

    我写的代码,已通过测试。

    复杂度比较高。

    #include<iostream>
    using namespace std;
    int ishuiwen(char *str,int n)//n为字符串长度
    {
    	char *s1=str,*s2=str+n-1;//s2指向末尾
    	int flag=0;
    	while(*s1)
    	{
    		if(*s1==*s2)
    		{
    			if((s1==s2)||(s1+1==s2)){flag=1;break;}
    			else {s1++;s2--;}
    		}
    		else break;
    	}
    	return flag;
    }
    int main()
    {
    	char str[20];
    	while(cin>>str)
    	{
    		char *str1=str;int max=1;
    		for(int i=0;i<strlen(str);i++)
    		{
    			for(int j=i+1;j<strlen(str);j++)
    			{
    				if(ishuiwen(str+i,j-i+1)==1)
    				{
    					if(j-i+1>max)max=j-i+1;
    				}
    			}
    		}
    		cout<<max<<endl;
    	}
    	return 0;
    }
    
    
  • 相关阅读:
    jQuery 插件
    jQuery 构造函数
    jQuery.merge()方法
    插入排序法
    归并排序法
    冒泡排序法
    选择排序法
    Jetty
    分布式锁&&redis
    Tomcat和设计模式
  • 原文地址:https://www.cnblogs.com/tgkx1054/p/2750477.html
Copyright © 2011-2022 走看看