实现一个算法,确定一个字符串 s 的所有字符是否全都不同。

    示例 1:

    输入: s = “leetcode”
    输出: false
    示例 2:

    输入: s = “abc”
    输出: true
    限制:

    0 <= len(s) <= 100
    如果你不使用额外的数据结构,会很加分。

    1. class Solution {
    2. public boolean isUnique(String astr) {
    3. char[] charStr = astr.toCharArray();
    4. HashSet<Character> set = new HashSet();
    5. for(int i = 0; i < charStr.length; i++) {
    6. if(!set.add(charStr[i])){
    7. return false;
    8. }
    9. }
    10. return true;
    11. }
    12. }
    1. class Solution {
    2. public boolean isUnique(String astr) {
    3. HashSet<Character> set = new HashSet();
    4. for(int i = 0; i < astr.length(); i++) {
    5. if(!set.add(astr.charAt(i))){
    6. return false;
    7. }
    8. }
    9. return true;
    10. }
    11. }

    利用indexOf() 与lastIndexOf() 判断是否处于相同位置来判断是否只有一个字符
    代码如下

    1. class Solution {
    2. public boolean isUnique(String astr) {
    3. for(int i = 0; i < astr.length()/2; i++) {
    4. if (astr.indexOf(astr.charAt(i)) != astr.lastIndexOf(astr.charAt(i))){
    5. return false;
    6. }
    7. }
    8. return true;
    9. }
    10. }