第一个只出现一次的字符位置

来源:互联网 发布:怎样和淘宝卖家聊天 编辑:程序博客网 时间:2024/06/11 07:14

题目

在一个字符串(1<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符的位置。若为空串,返回-1。位置索引从0开始

解题

如:ghkdmghkddmolllpj
出现一次的字符:opj
第一个出现一次的字符:o
数组或者Hash

public class Solution {    public int FirstNotRepeatingChar(String str) {        if(str == null || str.length() ==0)            return -1;        int[] A = new int[256];        for(int i=0;i<str.length();i++){            char ch = str.charAt(i);            A[ch]++;        }        for(int i=0;i<str.length();i++){            char ch = str.charAt(i);            if(A[ch] == 1)                return i;        }        return -1;    }}

数组比较简单

0 0
原创粉丝点击