码迷,mamicode.com
首页 > 其他好文 > 详细

判断回文字符串

时间:2020-04-11 18:42:23      阅读:69      评论:0      收藏:0      [点我收藏+]

标签:code   分析   ret   using   false   返回   使用   bcd   int   

题目

使用字符数组存储一段字符,判断是否是回文字符串(需要判断并忽略空格)

分析

使用递归就能很好的实现

实现

代码

#include<iostream>
using namespace std;

bool huiwen(char c[], int low, int high) {
	if (low > high)						//到达终点,说明之前的判断都通过了,确实是回文,停止判断
		return true;
	else if (c[low] == c[high])	//这个两个相等继续递归判断,注意此情况包括两个都是空格的情况
		return huiwen(c, low + 1, high - 1);
	else if (c[low] == ‘ ‘)				//碰到空格,跳过
		return huiwen(c, low + 1, high);
	else if (c[high] == ‘ ‘)			//碰到空格,跳过
		return huiwen(c, low, high - 1);
	else if (c[high] != c[low])		//不相等,返回false
		return false;
}

int main() {
	char c[] = { "asdf ds a" };
	cout << huiwen(c, 0, 8);
	return 0;
}

输入

abcdc ba
a cdcba

输出

1
0

判断回文字符串

标签:code   分析   ret   using   false   返回   使用   bcd   int   

原文地址:https://www.cnblogs.com/Za-Ya-Hoo/p/12681122.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!