0
点赞
收藏
分享

微信扫一扫

字符类型回文序列判断方法,寻找多个子字符串中的回文序列

海滨公园 2022-04-30 阅读 9
c++

1, 回文序列判断

#include<iostream>
#include<bits/stdc++.h>
using namespace std;
string reverse(string str)
{
  	int n = str.length();
  	for(int i=0;i<n/2;i++)
  	{
  		swap(str[i],str[n-i-1]);
	}
    return str;
}
bool isPalindrome(string a)
{
    return reverse(a)==a;
}
int main()
{
	string s;
	cin>>s;
	if(isPalindrome(s))cout<<"YES";
    else cout<<"NO";
		return 0;
}

2,

#include<iostream>
using namespace std;
string reverse(string str)//将字符串反转
{
  	int n = str.length();
  	for(int i=0;i<n/2;i++)
  	{
  		swap(str[i],str[n-i-1]);
	  }
    return str;
}
bool isPalindrome(string a)//判断字符串是否相等
{
    return reverse(a)==a;
}
int main()
{
	string s;
	cin>>s;
	for(int k=2;k<=s.size();k++)
	for(int i=0;i<s.size()-k+1;i++)
	if(isPalindrome(s.substr(i,k)))
	cout<<s.substr(i,k)<<'\n';
		return 0;
}
举报

相关推荐

0 条评论