每日一道算法题 019 面试题 01.01. 判定字符是否唯一

324 阅读1分钟

题目

leetCode 面试题第 01.01 题, 关联类型:字符串

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

示例 1:

输入: s = "leetcode"
输出: false 
示例 2:

输入: s = "abc"
输出: true
限制:

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

做题时间

class Solution {
    public boolean isUnique(String astr) {
        
        
        
    }
}

以上给出方法输入参数,完成作答。

题目分析

  1. 这道题目可以借用 Map 来做,时间复杂度可以达到 O(1),循环字符串,放到 Map 里面进行对比
  2. 也可以用双重 for 循环去做,时间复杂度为 O(n^2)

解答分析

本文只分析本人做题思路,仅供参考,了解一种解题思想,其他各种做题思路请上网查阅。

解答成功:
执行耗时:0 ms,击败了100.00% 的Java用户
内存消耗:36.4 MB,击败了12.80% 的Java用户

class Solution {
    public boolean isUnique(String astr) {
        for (int i = 0; i < astr.length(); i++) {
            for (int j = i + 1; j < astr.length(); j++) {
                if (astr.charAt(i) == astr.charAt(j)) {
                    return false;
                }
            }
        }
        return true;
    }
}