亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

從字符串中刪除字符串重復出現字符中的字符串偶數對字符 - java

從字符串中刪除字符串重復出現字符中的字符串偶數對字符 - java

慕桂英546537 2021-10-28 16:58:36
我是java初學者,我有這個問題:**Q01 [ 7 分] 編寫一個java 程序,輸入字符串,使用EvenPairs(str) 方法檢查每個字符(即字母表)是否存在偶數對。示例測試用例輸入:“3gy41d21y363”輸出:3 – 錯誤g – 假y – 真4 – 假1 – 真d – 假正如您在輸出中看到的,即使重復出現的每個字符也只打印一次,我解決了這個問題,直到這一步我找不到只打印字符 1 次的解決方案,結果是真還是假這是我的代碼:    package evenpairornot;import java.util.Scanner;public class EvenPairOrNot {static Scanner input = new Scanner(System.in);public static void main(String[] args) {    System.out.print("Enter a string: ");    String s1=input.nextLine();    EvenPairs(s1);}public static void EvenPairs(String s){    char [] chs=s.toCharArray();    int count=0;    for (int i = 0; i <chs.length; i++) {        for (int j = 0; j <chs.length; j++) {            if (chs[i]==chs[j]){                count++;             }            }         if(count%2==0)            System.out.println(s.charAt(i)+"- true");            else            System.out.println(s.charAt(i)+"- False");        count=0;     }}}這是輸出:輸入一個字符串:3gy41d21y3633- 錯誤g- 錯誤y-真4- 錯誤1-真d-錯誤2- 錯誤1-真y-真3- 錯誤6- 錯誤3- 錯誤等待你的幫助??!謝謝你
查看完整描述

1 回答

?
慕哥6287543

TA貢獻1831條經驗 獲得超10個贊

這是代碼?;旧显谒凶址麛低曛蟆T诖蛴≈?,我向后看以確保它不是重復的。這里有很大的優化空間,比如在計數之前進行檢查,或者可以只計算 i 之后的字符而不是計算所有字符。


public static void EvenPairs(String s) {


    char[] chs = s.toCharArray();

    int count = 0;


    for (int i = 0; i < chs.length; i++) {

        for (int j = 0; j < chs.length; j++) {

            if (chs[i] == chs[j]) {

                count++;

            }

        }


        boolean shouldPrint = true;  

        for (int k = i - 1; k >= 0; k--) {  //loop though each character before the current one to check if it was already printed. 

            if (chs[k] == chs[i]) {         //if we it was already printed don't print.

                shouldPrint = false;

                break;

            }

        }


        if (shouldPrint) {

            if (count % 2 == 0)

                System.out.println(s.charAt(i) + "- true");

            else

                System.out.println(s.charAt(i) + "- False");

        }


        count = 0;

    }


}


查看完整回答
反對 回復 2021-10-28
  • 1 回答
  • 0 關注
  • 169 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號