java 求解字符串中第一次出现的字符的位置

原创 2016年03月27日 22:45:10

题目:

在字符串中找出第一个只出现一次的字符的位置,如输入“abaccdeff”,则输出“2”。

解法:以空间换时间,借助Hashmap实现

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

public class Solution {
    public int FirstNotRepeatingChar(String str) {
        if(str==null||"".equals(str))
            return -1;
        Map<Character,Integer> map = new HashMap<Character,Integer>();
        Set<Character> keys = map.keySet();
        for(int i=0;i<str.length();i++){
            char c = str.charAt(i);
            if(keys.contains(c)){
                int value = map.get(c).intValue();
                value++;
                map.put(c, value);
            }else{
                map.put(c,1);
            }
        }
        for(int i=0;i<str.length();i++){
            char c = str.charAt(i);
            if(map.get(c).intValue()==1)
                return i;
        }
        return -1;
    }
}
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/diu_brother/article/details/50994578

Java获取字符串中某个字符串第一次出现的位置(索引)

用Matcher和Pattern类会非常简单,这两个类是利用正则表达式匹配查找的相关类,详细可以参见java Pattern和Matcher详解...
  • qq_18423547
  • qq_18423547
  • 2016-06-15 18:46:34
  • 6077

java 寻找指定字符第一次出现的位置

  • 2010年06月18日 17:19
  • 59KB
  • 下载

Java去掉指定字符串的开头的指定字符

Java去掉指定字符串的开头的指定字符
  • zhangzehai2234
  • zhangzehai2234
  • 2017-06-20 22:33:52
  • 1765

一个字符串中查找另一个字符出现的全部索引位置(JAVA)

开发中遇到要将某些字符文本使用SpannableStringBuilder替换成一个表情,这时候需要遍历这个字符串中特定字符出现的全部索引位置,代码如下: private String key ...
  • eyishion
  • eyishion
  • 2017-03-25 20:02:29
  • 7747

JAVA字符串中取特定字符的位置

String,一但声明了就不能变了!而StringBuffer是可变的,String声明的空间是个池里,而StringBuffer只能在堆里声明。 int indexOf(int ch) 返回指定字...
  • cc20032706
  • cc20032706
  • 2014-04-16 09:50:01
  • 7349

java小算法—查找字符串中第一次重复的字符

将一串字符串中第一次重复出现的字符找出 public class Demo3 { public static void main(String[] args) { String str="12...
  • weixin_37730482
  • weixin_37730482
  • 2017-06-06 10:59:30
  • 2363

Java String字符串最常见方法速查手册+代码示例详解

1、返回指定字符(字符串)的索引位置——indexOf() int indexOf(char ch||String str)    返回指定字符(字符串)在此字符串中第一次出现处的索引   int i...
  • zhangliangzi
  • zhangliangzi
  • 2016-06-25 17:54:23
  • 1180

Java查找指定字符串第一次或最后一次出现的位置

Java查找指定字符串第一次出现的位置
  • qq_34507167
  • qq_34507167
  • 2016-04-02 18:28:46
  • 517

获取目标字符串在源字符串第一次出现的下标Demo

  • 2017年08月21日 15:17
  • 724B
  • 下载

【字符串4】-第一个只出现一次的字符

题目描述 在一个字符串(1 import java.util.Map; import java.util.HashMap; public class Solution { publ...
  • noaman_wgs
  • noaman_wgs
  • 2016-07-27 21:16:42
  • 154
收藏助手
不良信息举报
您举报文章:java 求解字符串中第一次出现的字符的位置
举报原因:
原因补充:

(最多只允许输入30个字)