387. First Unique Character in a String

栏目: Java · 发布时间: 5年前

内容简介:Given a string, find the first non-repeating character in it and return it's index. If it doesn't exist, return -1.Examples:难度: easy

Given a string, find the first non-repeating character in it and return it's index. If it doesn't exist, return -1.

Examples:

s = "leetcode"
return 0.
s = "loveleetcode",
return 2.

难度: easy

题目:给定字符串,找出第一个不重复的字符,并返回其下标。如果不存在则返回-1.

思路:数组分别记录下标与出现次数。

Runtime: 10 ms, faster than 93.94% of Java online submissions for First Unique Character in a String.

Memory Usage: 40 MB, less than 14.74% of Java online submissions for First Unique Character in a String.

class Solution {
    public int firstUniqChar(String s) {
        int[] count = new int[26];
        int[] index = new int[26];
        int result = s.length();
        for (int i = 0; i < result; i++) {
            char c = s.charAt(i);
            count[c - 'a']++;
            index[c - 'a'] = i + 1;
        }
        
        for (int i = 0; i < 26; i++) {
            if (1 == count[i]) {
                result = Math.min(result, index[i] - 1);
            }
        }
        
        return result >= s.length() ? -1 : result;
    }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

增长黑客

增长黑客

Sean Ellis / 张溪梦 / 中信出版集团股份有限公司 / 2017-11-1 / CNY 59.00

脸谱网如何从默默无闻到坐拥二十几亿用户? 爱彼迎、优步何以在短短时间估值超过百亿美元? 领英怎样跨步成为全球领先的职业社交平台? 这些初创公司实现爆发式成长的共同奥秘就是增长黑客。 增长黑客是硅谷当下热门的新商业方法论,其精髓在于通过快节奏测试和迭代,以极低甚至零成本获取并留存用户。 作为最早提出“增长黑客”概念的理论先驱、带领Dropbox实现500%增长的实战领军......一起来看看 《增长黑客》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

随机密码生成器
随机密码生成器

多种字符组合密码

SHA 加密
SHA 加密

SHA 加密工具