用遞歸調用來判斷字符串是不是迴文

思路:先判斷字符串的長度,當爲1時就是迴文的字符串,以後若是大於1,就調用函數進行判斷。經過返回值對其是不是迴文進行輸出。java

在函數中主要是傳入字符串數組還有兩個參數,經兩個參數做爲下標,經過字符串的CharAt函數對字符串的相應部分進行比較,最後進行兩個參數,前面的加一後面的減1,逐漸向中間靠攏。依次進行比較、當只剩下一個或者兩個時對其進行另外的分析。數組

其主要的代碼以下:函數

 
 

package com.迴文;
import java.util.Scanner;
public class HuiWen
{
public static int diaoyong(String c,int a,int b)
{
if(a==b)
return 1;
if(a+1==b)
{
if(c.charAt(a)==c.charAt(b))
return 1;
else
return -1;
}
else
{
if(c.charAt(a)==c.charAt(b))
{
a+=1;
b-=1;
return diaoyong(c,a,b);
}
else
return -1;
}

}ui

 
 

public static void main(String[] args)
{
Scanner sc=new Scanner(System.in);
System.out.println("請輸入一個字符串:");
String wen=sc.nextLine();spa

 
 

int w1=wen.length()-1;
if(w1==0)
System.out.println("是迴文");
else
{
if(diaoyong(wen,0,w1)==1)
System.out.println("是迴文");
else if(diaoyong(wen,0,w1)==-1)
System.out.println("不是迴文");
}
}code

 
 

}blog



重要的是遞歸調用,其函數要調用本身自己。最後重要的一點是應用字符串的CharAt函數將其按照字符數組的樣式進行應用以及比較。遞歸

相關文章
相關標籤/搜索