回文字符串判斷


import java.util.Scanner;
   
    public class Huiwen {
        public static void main(String[]args){
        System.out.println("請輸入需要判斷字符串:");
        Scanner in = new Scanner(System.in);
        String str=in.next();
        int n=str.length();
        int m=huiwen(str,n);
        if(m==1)
        System.out.println("這個字符串是回文字符串");
        else
        System.out.println("這個字符串不是回文字符串");
        }
    public static int huiwen(String str,int n){
        int a,b,j=0;
        char c1,c2;
        a=str.length()-n; //正移
        
        b=str.length()-(a+1);  //倒移
        
        c1=str.charAt(a);  //取字符
        c2=str.charAt(b);  //取字符
        
        if(c1==c2||a==b) j=1;  //遞歸
        
        if(a != b && a<b && j==1 )
        huiwen(str,n-1);
        return j;
        }
    }

編程思路:按照要求使用遞歸,鑒於使用循環讀取字符串過於復雜,因此采用str.charAt( )函數來進行讀取,此時只需定義一個變量來判斷讀取位置的移動,使用嵌套來達到與循環相同的效果。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM