使用递归判断回文字串
1.设计思想:
判断字串长度,为0或1时返回true;否则从头和尾依次向中间遍历,遍历的条件是尾大于等于头,如果不等于返回false。之后进行递归。
2.源程序:
package huiwen; import java.util.Scanner; public class test { static Scanner input=new Scanner(System.in); public static boolean judge(int len,char s[],int low,int high) { if(len==0||len==1) return true; if(s[low]!=s[high]||low>=high) { return false; } return judge(len-2, s, low+1, high-1); } public static void main(String[] args) { // TODO Auto-generated method stub String ss = input.next(); char[] s = ss.toCharArray(); int len = ss.length(); boolean huiwen = judge(len, s, 0, len-1); System.out.print(huiwen); } }
3.运行结果:
4.分析:
传值不用传low,high,len,可以设定一个n,相当于位置,通过len-n和len代表头尾。