-2
    public static boolean isUniqueChars2(String str) {
        boolean[] char_set = new boolean[256];

        for (int i = 0; i < str.length(); i++) {
            int val = str.charAt(i);
            if (char_set[val])
                return false;

            char_set[val] = true;
        }

        return true;
    }
4

2 に答える 2

1

入力文字列をカウントしないと、コードにはO(1)スペースの複雑さがあります。入力に関係なく、一定量のスペースを消費します。

O(1)ループが 256 を超えるステップを実行することはないため、時間計算量もです。

于 2013-09-02T15:24:34.637 に答える