【LeetCode】387. First Unique Character in a String

梦想的初衷 提交于 2019-12-01 01:40:12

Difficulty:easy

 More:【目录】LeetCode Java实现

Description

https://leetcode.com/problems/first-unique-character-in-a-string/

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.

 

Note: You may assume the string contain only lowercase letters.

Intuition

Use HashMap( or int[256] ) to store the frequency of each character. 

 

Solution

    public int firstUniqChar(String s) {
        int[] times = new int[26];
        for(int i=0; i<s.length(); i++)
            times[s.charAt(i)-'a']+=1;
        for(int i=0; i<s.length(); i++){
            if(times[s.charAt(i)-'a']==1)
                return i;
        }
        return -1;
    }

  

Complexity

Time complexity : O(n)

Space complexity : O(1)

 

 

 More:【目录】LeetCode Java实现

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!