A、 B 、 C 是 3 個字符串。把 A 中包含的所有 B 都替換爲 C ,如果替換以後還有 B 就繼續替 換,直到 A 不包含 B 爲止

第一題:(此題目要求手寫)
A、 B 、 C 是 3 個字符串。把 A 中包含的所有 B 都替換爲 C ,如果替換以後還有 B 就繼續替
換,直到 A 不包含 B 爲止。
1.
請編寫程序實現以上功能。不允許使用系統提供的字符串比較、查找和替換函數。
2.
以上程序是否總是能正常輸出結果?如果不是,列出哪些情況下無法正常輸出結果,盡
可能詳細和全面。

public class Test1 {
    public static void main(String[] args) {
        String a = "aabbccbb";
        String b = "bb";
        String c = "eeee";
        a = func(a, b, c);
        System.out.println(a);
    }

    public static String func(String a,String b,String c){
        while(true){
            int num = a.indexOf(b);
            if (num != -1){
                char[] a_chars = a.toCharArray();
                a = "";
                int count = 0;
                for (int i = 0; i < a_chars.length; i++){
                    if (i >= num && i < num + b.length()){
                        if (count == 0){
                            a = a + c;
                        }
                        count ++;
                    }else{
                        a = a + a_chars[i];
                    }
                }
            }else{
               // System.out.println(a);
                return a;
            }
        }
    }
}

在這裏插入圖片描述
這題好久沒玩數學看的我有點懵!
寫不出來,真他媽頭疼!
只是畫了畫,分析一下
在這裏插入圖片描述
至於代碼麼,沒寫。。。。。。。。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章