更多、更体系化的内容请持续关注 《菜鸟程序员成长计划》之数据结构与算法 专栏,您的 关注、点赞、收藏 都将是小编持续创作的动力!
题目
实现一个算法,确定一个字符串 s
的所有字符是否全都不同。
示例 1:
输入: s = "leetcode"
输出: false
示例 2:
输入: s = "abc"
输出: true
限制:
0 <= len(s) <= 100
s[i]
仅包含小写字母- 如果你不使用额外的数据结构,会很加分。
解题
方法一
一、方法描述
根据提示散列表 HashMap(特性为不允许有重复的主键),泛型设置<Character,Integer>,
HashMap常用方法:
1、put(K,V) 向集合添加元素
2、size()获取集合长度
我的解题思路:
设置计数器,初始值0,添加一次则++自增。HashMap的put方法遇见重复的K时,会覆盖掉之前的(K,V)。所以,当重复添加就有覆盖,HashMap的长度就会比原字符串的长度 短
class Solution {
public boolean isUnique(String astr) {
boolean flag = true;
int cnt = 0;
HashMap<Character,Integer> mh = new HashMap<Character,Integer>();
for(int i = 0;i <astr.length();i++){
char ch = astr.charAt(i);
mh.put(ch