专栏首页猿计划剑指Offer LeetCode 面试题50. 第一个只出现一次的字符

剑指Offer LeetCode 面试题50. 第一个只出现一次的字符

面试题50. 第一个只出现一次的字符

在字符串 s 中找出第一个只出现一次的字符。如果没有,返回一个单空格。 s 只包含小写字母。

示例:

s = “abaccdeff” 返回 “b”

s = “” 返回 " "

解题

import java.util.HashMap;
import java.util.Map;

/**
 * @Auther: truedei
 * @Date: 2020 /20-5-20 08:45
 * @Description:
 */
public class Test {

    static  public char firstUniqChar(String s) {

        Map<Character,Boolean> dic = new HashMap<>();

        char[] array = s.toCharArray();

        for (char c : array) {
            dic.put(c, !dic.containsKey(c));
        }

        for (char c : array) {
            if (dic.get(c)) return c;
        }

        return ' ';
    }

    public static void main(String[] args) {

        System.out.println(firstUniqChar("leetcode"));
    }
}

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 终于懂了建造者模式

    TrueDei
  • 我通过三个故事终于学明白了三种工厂模式

    接下来创建一个工厂类,功能是提供给用户的出行的方式,用户只需要告诉工厂类他需要什么方式就好了。

    TrueDei
  • 贪心算法-活动选择问题(Python实现)

    TrueDei
  • 关于inodes占用100%的问题及解决方法

    系统:Centos;一般的Linux系统也可以用这种方法。 情况描述:今天session文件写入时,写入不了,而且连接到服务器上开启服务都开不了,起始以为磁盘空...

    joshua317
  • [javascript] 实现展开全文和收起全文效果

    在展示大量文本的时候,很多网站会在页面上出现一个展开全文的文字按钮 , 点击这个按钮才会展开全部内容 .

    陶士涵
  • java(5)——数据类型中的字符型和布尔类型

    char在内存中占两个字节,字符型用单引号括起来,并且里面只能写一个单字符,空格也只能打一个。

    gzq大数据
  • php JSON数据格式化输出方法

    php 的json_encode能把数组转换为json格式的字符串。字符串没有缩进,中文会转为unicode编码,例如\u975a\u4ed4。人阅读比较困难。...

    joshua317
  • 深入Node.js的模块加载机制,手写require函数

    模块是Node.js里面一个很基本也很重要的概念,各种原生类库是通过模块提供的,第三方库也是通过模块进行管理和引用的。本文会从基本的模块原理出发,到最后我们会利...

    蒋鹏飞
  • 【iOS开发】UIScrollView 看不到内容、UIScrollView 不能滑动

    初学者第一次使用 UIScrollView 的时候,很可能会遇到 UIScrollView 滑动不了,或者明明添加了内容,却看不到的问题。 这里展示最简洁、最...

    KyXu
  • 利用canvas实现毛笔字帖(一)

    最近在慕课网上找到了很好的canvas教程, 来自 @liuyubobobo 的 学写一个字 canvas绘图教程 在 @liuyubobobo 老师的系列ca...

    用户1394570

扫码关注云+社区

领取腾讯云代金券