您好,登錄后才能下訂單哦!
在Java中,我們可以設計一個函數來檢查一個字符串是否是回文串。回文串是指正讀和反讀都相同的字符串。以下是一個簡單的實現:
public class PalindromeChecker {
public static void main(String[] args) {
String input = "madam";
boolean isPalindrome = isPalindrome(input);
System.out.println("Is the input string a palindrome? " + isPalindrome);
}
/**
* 檢查字符串是否是回文串
*
* @param s 要檢查的字符串
* @return 如果字符串是回文串,則返回true,否則返回false
*/
public static boolean isPalindrome(String s) {
if (s == null || s.length() == 0) {
return true;
}
int left = 0;
int right = s.length() - 1;
while (left < right) {
if (s.charAt(left) != s.charAt(right)) {
return false;
}
left++;
right--;
}
return true;
}
}
主函數 main
:
input
。isPalindrome
函數檢查該字符串是否是回文串。回文檢查函數 isPalindrome
:
true
,因為空字符串和長度為0的字符串都是回文串。left
和 right
,分別指向字符串的開頭和結尾。while
循環,當 left
小于 right
時,比較 s.charAt(left)
和 s.charAt(right)
:
false
,表示該字符串不是回文串。left
向右移動一位,將 right
向左移動一位,繼續比較下一對字符。left
不再小于 right
時,說明所有字符都匹配,返回 true
,表示該字符串是回文串。這個實現方法的時間復雜度是 O(n),其中 n 是字符串的長度,因為每個字符最多被比較一次。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。