第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

檢查回文字符串

檢查回文字符串

手掌心 2019-06-23 17:14:48
檢查回文字符串A 回文是一個(gè)詞、短語(yǔ)、數(shù)字或其他單元序列,可以在任何方向上以相同的方式讀取。為了檢查一個(gè)單詞是否是回文,我得到單詞的char數(shù)組并比較字符。我測(cè)試過了,看起來很管用。然而,我想知道這是正確的,還是有什么需要改進(jìn)的。這是我的代碼:public class Aufg1 {     public static void main(String[] args) {         String wort = "reliefpfpfeiller";         char[] warray = wort.toCharArray();          System.out.println(istPalindrom(warray));            }     public static boolean istPalindrom(char[] wort){         boolean palindrom = false;         if(wort.length%2 == 0){             for(int i = 0; i < wort.length/2-1; i++){                 if(wort[i] != wort[wort.length-i-1]){                     return false;                 }else{                     palindrom = true;                 }             }         }else{             for(int i = 0; i < (wort.length-1)/2-1; i++){                 if(wort[i] != wort[wort.length-i-1]){                     return false;                 }else{                     palindrom = true;                 }             }         }         return palindrom;     }}
查看完整描述

3 回答

?
人到中年有點(diǎn)甜

TA貢獻(xiàn)1895條經(jīng)驗(yàn) 獲得超7個(gè)贊

為什么不只是:

public static boolean istPalindrom(char[] word){
    int i1 = 0;
    int i2 = word.length - 1;
    while (i2 > i1) {
        if (word[i1] != word[i2]) {
            return false;
        }
        ++i1;
        --i2;
    }
    return true;}

例子:

輸入是“andna”。
I1為0,i2為4。

我們將比較第一個(gè)循環(huán)迭代word[0]word[4]..它們是相等的,所以我們?cè)黾觟1(現(xiàn)在是1)和減少i2(現(xiàn)在是3)。
所以我們比較n,它們是相等的,所以我們?cè)黾觟1(現(xiàn)在是2)和減少i2(它是2)。
現(xiàn)在i1和i2是相等的(它們都是2),所以while循環(huán)的條件不再為true,所以循環(huán)終止,我們返回true。


查看完整回答
反對(duì) 回復(fù) 2019-06-23
?
一只萌萌小番薯

TA貢獻(xiàn)1795條經(jīng)驗(yàn) 獲得超7個(gè)贊

您可以通過將字符串與其本身相反的情況進(jìn)行比較來檢查字符串是否為回文:

public?static?boolean?isPalindrome(String?str)?{
????return?str.equals(new?StringBuilder(str).reverse().toString());}

或者對(duì)于早于1.5的Java版本,

public?static?boolean?isPalindrome(String?str)?{
????return?str.equals(new?StringBuffer().append(str).reverse().toString());}
查看完整回答
反對(duì) 回復(fù) 2019-06-23
?
蝴蝶刀刀

TA貢獻(xiàn)1801條經(jīng)驗(yàn) 獲得超8個(gè)贊

一個(gè)簡(jiǎn)潔的版本,它不涉及(低效率)初始化一組對(duì)象:

boolean isPalindrome(String str) {    
    int n = str.length();
    for( int i = 0; i < n/2; i++ )
        if (str.charAt(i) != str.charAt(n-i-1)) return false;
    return true;    }


查看完整回答
反對(duì) 回復(fù) 2019-06-23
  • 3 回答
  • 0 關(guān)注
  • 590 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)