题目:
实现一个算法,确定一个字符串 s 的所有字符是否全都不同。
示例 1:
输入: s = "leetcode"
输出: false
示例 2:
输入: s = "abc"
输出: true
限制:
0 <= len(s) <= 100
如果你不使用额外的数据结构,会很加分。
解决方法:
public static boolean isUnique(String astr) {
char[] chars = astr.toCharArray();
int result = 0;
for (char aChar : chars) {
int index = aChar - 'a';
if ((result & (1 << index)) == (1 << index)) {
return false;
}else {
result |= 1<<index;
}
}
return true;
}
或者:
public static boolean isUnique(String astr) {
char[] chars = astr.toCharArray();
int result = 0;
for (char aChar : chars) {
int index = aChar - 'a';
if ((result & (1 << index)) != 0) {
return false;
}else {
result |= 1<<index;
}
}
return true;
}
参考:https://leetcode-cn.com/problems/is-unique-lcci