欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

Java棧和隊列判斷回文數

呂致盈1年前7瀏覽0評論

棧和隊列是Java中常用的數據結構,它們可以被用來判斷一個字符串是否是回文數。

先來了解一下什么是回文數?;匚臄抵傅氖钦x和倒著讀都一樣的數字,比如121、1221、12321等。

在Java中,我們可以使用棧和隊列來實現回文數的判斷。具體來說,我們可以把輸入的數轉化為字符串,然后把字符串每個字母依次入隊列和棧。

接著進行判斷,每次從隊列和棧中分別出隊和出棧一個字母,比較它們是否相等。如果相等,繼續取下一個,否則就不是回文數了。

下面是Java代碼的實現:

import java.util.*;
public class Palindrome {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("Enter a number: ");
String str = sc.nextLine();
Queuequeue = new LinkedList();
Stackstack = new Stack();
for(int i = 0; i< str.length() ; i++) {
queue.add(str.charAt(i));
stack.push(str.charAt(i));
}
boolean isPalindrome = true;
while (!queue.isEmpty()) {
if (!queue.remove().equals(stack.pop())) {
isPalindrome = false;
break;
}
}
if (isPalindrome) {
System.out.println(str + " is a palindrome number.");
} else {
System.out.println(str + " is not a palindrome number.");
}
}
}

這段代碼首先從鍵盤輸入一個數字,然后創建一個隊列和一個棧,遍歷字符串中的每個字符,將它們分別入隊和入棧。之后,代碼使用一個循環來比較隊列中的字符和棧中出棧的字符,如果都相等則是回文數,否則不是。

這就是一種使用Java中棧和隊列的方法來判斷回文數的例子。