1.1 确定字符互异

请实现一个算法,确定一个字符串的所有字符是否全都不同。这里我们要求不允许使用额外的存储结构。
给定一个string iniString,请返回一个bool值,True代表所有字符全都不同,False代表存在相同的字符。保证字符串中的字符为ASCII字符。字符串的长度小于等于3000。

APPROACH1 SET

CC150没有必须要求不许用额外存储。
如果用存储,可以问一下,字符集是ASCII还是UNICODE。ASCII的长度只有256,新建一个长度256的boolean数组就行了。大于256可以直接返回false。时间O(n)。

APPROACH2 BRUTE FORCE

O(n2) 。

    public boolean checkDifferent(String iniString) {
        // write code here
        for(int i = 0 ; i < iniString.length()-1 ; i ++)
            for(int j = i + 1 ; j < iniString.length() ; j ++){
                if(iniString.charAt(i) == iniString.charAt(j)){
                    return false;
                }
            }
        return true;
    }

APPROACH3 SORT

排序,但是也要额外存储。

--

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,188评论 19 139
  • 在挖掘分析的过程当中对字符串的处理是极为重要的,且出现也较为频繁,R语言作为当前最为流行的开源数据分析和可视化平台...
    果果哥哥BBQ阅读 11,230评论 0 8
  • 第5章 引用类型(返回首页) 本章内容 使用对象 创建并操作数组 理解基本的JavaScript类型 使用基本类型...
    大学一百阅读 8,885评论 0 4
  • 一、问题描述 盈,有剩余;亏,不足。若干人分配一些物品,根据两种或盈或亏的的分配情况,进而确定人数和物品数。 公式...
    若叶阅读 5,919评论 0 0
  • 采风, 我想去采风, 我真的想去采风! 带上一抹春的心情, 找回一丝青春的萌动! 到大自然寻找最质朴的梦! 掬起一...
    飘逸1阅读 2,778评论 2 6

友情链接更多精彩内容