递归 回文

mac2022-06-30  10

应用了递归的思想,回文是看第几个和倒数第几个是不是相同,设函数类型是布尔型 ,如果不同则返回值为false,对应着不是回文。

如果相等的话那么第几个+1 倒数第几个-1,在比较。直到n=0或n=1结束。当然就1个的话也是回文。

 

//张华锦

import java.util.Scanner;

public class Test { public static void main(String[] args) { String str; Scanner scanner=new Scanner(System.in); str=scanner.next(); int s=str.length()-1; int i=0; boolean a; a=abs(s,i,str); if(a!=true) { System.out.println(str+" ,不是回文"); }else { System.out.println(str+" ,是回文"); }}public static boolean abs(int n,int i,String a) { if(n==0||n==1) {return true; } else { if(a.charAt(i)==a.charAt(n)) { return abs(++i,--n,a); } else return false; } }}

以下是运行结果截图:

        

 

总结:

回文主要就是比较,找清楚位置,以及变量的++,--。

运用了递归的思想,先找到结束条件,函数自己调用自己,改变变量值,再传给函数。

 

转载于:https://www.cnblogs.com/zhjvvvvvv/p/11586040.html

最新回复(0)