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;
}
答案 0 :(得分:1)
不计算输入字符串,代码具有O(1)
空间复杂度。无论输入如何,它都会消耗恒定的空间。
时间复杂度也是O(1)
,因为循环永远不会执行超过256步。
答案 1 :(得分:1)
输入的大小显然是O(n),但是此函数的内存要求是O(1),因为数组的大小是常量。时间复杂度是O(n),因为它遍历字符串..