LeetCode刷题(二)

138 阅读1分钟

判断字符串是否唯一

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

示例 1:

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

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

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

java

class Solution {
    public boolean isUnique(String astr) {
        char astrs[] = astr.toCharArray();
        Arrays.sort(astrs);
        for(int i=0;i<astrs.length-1;i++){
            if(astrs[i]==astrs[i+1]){
                return false;
            }
        }
        return true;
    }
}

python

class Solution(object):
    def isUnique(self, astr):
        astrs=sorted(astr)
        for i in range(len(astrs)-1):
            if astrs[i]==astrs[i+1]:
                return  False
        return True

这里的思路就是先把字符串排序,排序后如果有重复的字符肯定所处的位置是相邻的,之后遍历字符串数组出现前一个位置和后一个位置相同的情况就返回false 遍历完后就返回true,这里要注意java中要先用toCharArray将字符串转为字符串数组