鸿 网 互 联 www.68idc.cn

当前位置 : 服务器租用 > 编程语言开发 > c++ > >

递归辅助函数判断回文串

来源:互联网 作者:佚名 时间:2016-06-06 10:06
《C++程序设计》(梁勇著第三版553页) 无 #include iostream#include stringusing namespace std;bool isPalindrome(const string s, int low, int high){ if (high = low) // Base case return true; else if (s[low] != s[high]) // Base case return fals
《C++程序设计》(梁勇著第三版553页) <无>
#include <iostream>
#include <string>
using namespace std;

bool isPalindrome(const string& s, int low, int high)
{
  if (high <= low) // Base case
    return true;
  else if (s[low] != s[high]) // Base case
    return false;
  else
    return isPalindrome(s, low + 1, high - 1);
}

bool isPalindrome(const string& s)
{
  return isPalindrome(s, 0, s.size() - 1);
}

int main()
{
  cout << "Enter a string: ";
  string s;
  getline(cin, s);

  if (isPalindrome(s))
    cout << s << " is a palindrome" << endl;
  else
    cout << s << " is not a palindrome" << endl;

  return 0;
}
网友评论
<