1. 程式人生 > >用棧來判斷迴文

用棧來判斷迴文

這裡寫圖片描述“`
package com.imooc;

import java.util.Scanner;

public class huiWen {

/**
 * @param args
 * 用棧來判斷是否是迴文,中點以前壓入棧,然後再出站一一和中點以後的進行對比,若都相等,出站完畢
 * 為迴文,否則為否
 */
public static void main(String[] args) {
    char[] a;
    myStack stack=new myStack();
    int mid=0;
    int next;
    Scanner scanner=new Scanner(System.in);

    a=scanner.nextLine().toCharArray();//將String型別轉換為char型別
    mid=a.length/2-1;//求出字串中點
    stack.CreateQueue(100);
    for(int i=0;i<=mid;i++){
        stack.EnStack(a[i]);
    }
    if(a.length%2==0){
        next=mid+2;
    }
    if(a.length%2!=0){
        next=mid+1;
    }
    for(int i=mid;i<a.length;i++){
        if(a[i]!=stack.DeStack()){
            break;
        }
    }
    if(stack.StackEmpty()){
        System.out.println("YES");
    }else{
        System.out.println("NO");
    }

}

}

“`