藍橋杯:不同的子串

一個字符串的非空子串是指字符串中長度至少爲1 的連續的一段字符組成
的串。例如,字符串aaab 有非空子串a, b, aa, ab, aaa, aab, aaab,一共7 個。
注意在計算時,只算本質不同的串的個數。

請問,字符串0100110001010001 有多少個不同的非空子串?

提示:HashSet集合自動去重

import java.util.HashSet;
import java.util.Set;

public class SonString {
    public static void main(String[] args) {
        String string="0100110001010001";
        Set<String> hashSet=new HashSet<>();
        for (int i = 0; i <string.length() ; i++) {
            for (int j=i;j<string.length();j++){
                hashSet.add(string.substring(i,j+1));
            }
        }
        System.out.println(hashSet.size());

    }
}

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