递归方法判断回文
Posted mawangwang
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了递归方法判断回文相关的知识,希望对你有一定的参考价值。
(1) 使用递归方式判断某个字串是否是回文( palindrome );
“回文”是指正着读、反着读都一样的句子。比如“我是谁是我”
使用递归算法检测回文的算法描述如下:
A single or zero-character string is a palindrome.
Any other string is a palindrome if the first and last characters are the same, and the string that remains, excepting those characters, is a palindrome.
1 package 递归回文; 2 import java.util.*; 3 public class Huiwen{ 4 static Scanner x=new Scanner(System.in); 5 static char strs[] = new char[1000]; 6 static int j=0; 7 public static void main(String[] args) { 8 String s = x.next();//从键盘输入 9 for(int i=0;i<s.length();i++) {//转化为字符数组 10 strs[j] = s.charAt(i); 11 j++; 12 } 13 boolean huiwen = isHuiwen(strs, 0, j-1,j); 14 System.out.println(huiwen); 15 } 16 public static boolean isHuiwen(char a[],int low,int high,int length){ 17 if(length == 1 || length == 0) 18 return true;//字符个数为1,必为回文 19 if (a[low] != a[high] || low >= high) {//第一个字符与最后一个字符比较 20 return false; 21 } 22 return isHuiwen(a, low + 1, high -1,length -2);//递归 23 } 24 }
运行截图:
以上是关于递归方法判断回文的主要内容,如果未能解决你的问题,请参考以下文章
课程作业03:用递归方法计算组合数解决汉诺塔问题判断某个字符串是否回文