|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
- bool Palin(string t)
- {
- int i = t.size() - 1;
- if(i + 1 == 1)
- return true;
- else
- {
- if(t[0] != t[i])
- return false;
- else
- {
- if(i - 1 == 0 || i - 1 == 1)
- return true;
- else
- {
- t.erase(0, 1);t.erase(i, i+1);
- return Palin(t);
- }
- }
- }
- }
复制代码
求大哥指点一下
- #include <iostream>
- #include <iomanip>
- #include <string>
- bool palindrome(std::string str){
- if(str.size() <= 1){
- return true;
- }
- else if(str.front() != str.back()){
- return false;
- }
- str.erase(str.size()-1, 1);
- str.erase(0, 1);
- return palindrome(str);
- }
- int main()
- {
- std::string A = "abcdcba";
- std::string B = "abcdefg";
-
- std::cout
- << "A is palindrome: "
- << std::boolalpha
- << palindrome(A)
- << std::endl
- << "B is palindrome: "
- << std::boolalpha
- << palindrome(B)
- << std::endl;
- return 0;
- }
复制代码- A is palindrome: true
- B is palindrome: false
复制代码
|
|