递归方法
Posted kyin
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了递归方法相关的知识,希望对你有一定的参考价值。
使用递归方式判断某个字串是否是回文( palindrome );
public static void main(String[] args) { System.out.println("please input a string of Characters:"); Scanner input=new Scanner(System.in); String str=input.nextLine(); input.close(); int n=0; int m=str.length()-1; //boolean p= huiWen(str,n,m); if(huiWen(str,n,m)) System.out.println("这个字符串是回文字符串"); else System.out.println("这个字符串不是回文字符串"); } public static boolean huiWen(String str,int n,int m){ if(n > m) throw new IllegalArgumentException(); if(n == m) return true; else{ return (str.charAt(n) == str.charAt(m)) && huiWen(str,n+1,m-1); } }
思路:
先定义一个判断回文的方法,先得到字符串的长度,利用charAt方法去比较第一个和最后一个字符,如果一样,前一个向后移一位,后一个向前移一位,再比较;如此下去,直到前一个等于后一个;
在主方法中调用这个方法,进行判断;
问题:
只能判断字符个数为奇数的字符串,偶数的出现问题;
以上是关于递归方法的主要内容,如果未能解决你的问题,请参考以下文章