zoukankan      html  css  js  c++  java
  • 回文串判断(递归实现)

      目的:判断一个字符串是否为回文串。

      代码如下:

     1 import java.util.Scanner;
     2 
     3 public class Palindrome {
     4     public static void main(String[] args) {
     5         Scanner in = new Scanner(System.in);
     6         String s = in.next();
     7         int n = s.length();
     8         if(n == 1||n == 0){
     9             System.out.println("该字符串回文");
    10         }
    11         else{
    12             judge(s,0,n-1);
    13         }
    14         in.close();
    15     }
    16     
    17     public static void judge(String a, int b, int c){
    18         char c1 = a.charAt(b);
    19         char c2 = a.charAt(c);
    20         if(c1==c2){
    21             if(c == b||c == b+1){
    22                 System.out.println("该字符串回文");
    23             }
    24             else{
    25                 judge(a,++b,--c);
    26             }
    27         }
    28         else{
    29             System.out.println("该字符串不回文");
    30         }
    31     }
    32 
    33 }

    judge方法的3个参数:String a指输入的字符串;int b初始为字符串头部的下标,每执行一次方法自增一次;int c初始为字符串尾部的下标,每执行一次方法自减一次。

    具体执行:利用charAt读取字符串中的字符,分别用变量c1和c2表示,之后进行比较。中止条件为c==b(当字符串长度为偶数)或c==b+1(字符串长度为奇数),不符合中止条件,且c1==c2则递归调用方法。直至出现结果。

  • 相关阅读:
    C#线程锁使用全功略
    viewstate 与 session 区别
    Server.MapPath() 用法
    SQL Server 存储过程
    数据库索引的概念
    从C#程序中调用非受管DLLs
    [转载]C++、C#写的WebService相互调用
    解决WCF接口无法传递object参数的问题
    UTF-8,UTF-16
    js 验证字符串是否全为中文
  • 原文地址:https://www.cnblogs.com/20183711PYD/p/11575580.html
Copyright © 2011-2022 走看看