zoukankan      html  css  js  c++  java
  • 递归判断字符串是否为回文

    package text;    
    import java.util.Scanner;
      public class lianxi{
           public static void main( String args[] )
           {
              Scanner input=new Scanner(System.in);
              System.out.print("请输入字符串:");         
              String str="";
              str=input.nextLine();
              System.out.println(huiwen(str));     
            }          
            public static boolean huiwen(String str) {
              int n=str.length();
              char f=str.charAt(0);
              char l=str.charAt(n-1);
              if(f!=l) return false;
    else if(n==1||f==l) return true;
    return huiwen(str.substring(1,n-1)); } }
    运行结果:
      

        递归是一种算法,被广泛应用在程序中。递归是指函数、过程或子程序在运行过程中,直接或间接调用自身而产生的重入现象。递归是计算机科学中的一个重要概念,递归的方法是程序设计中有效的方法,采用递归编写程序能使程序变得简洁和清晰。

        所以在判断字符串中的字符是否相同时,除了只有一个字符这种特殊情况,无论字符串的长度是多少,都可以使用一种方法,就是将第一个字符与最后一个字符比较,之后重复调用未判断字符串中的第一个字符和最后一个字符,再进行比较。结束的情况就是判断出来俩字符相等或不等,所以不会进入调用的死循环。选择布尔类型的函数,就是为了保证不重复输出每一次判断的结果。

        这种方法不仅使运行结果很简单,还使代码很简洁。

  • 相关阅读:
    企业年金个税计算问题解读
    无线共享代码
    解决IE只能用管理员身份运行才能正常
    关于系统安装经验总结
    T-SQL 中Float数据类型的奇葩四舍五入
    win7 enterprise key backup
    IOS-触摸手势
    IOS-尺寸
    iOS开发-object-c之 @[], @{}
    IOS-电话和短信功能
  • 原文地址:https://www.cnblogs.com/fengjingfei/p/11586114.html
Copyright © 2011-2022 走看看