首页 > 其他 > 详细

剑指offer-第五章优化时间和空间效率(在字符串中第一次出现切只出现一次的字符)

时间:2015-08-27 00:07:22      阅读:273      评论:0      收藏:0      [点我收藏+]

题目:在字符串中第一次出现切只出现一次的字符

思路:用HashMap来存放对应的char值和该char出现的次数。做一次变量就可以得到第一个只出现一次的字符。

Java代码:

import java.util.LinkedHashMap;

//思路:用HashMap来存放对应的char值和该char出现的次数。做一次变量就可以得到第一个只出现一次的字符。
public class FirstNotRepeatingChar {
    public Character firstNotRepeating(String str){
        if(str==null)
            return null;
        char[] chars=str.toCharArray();
        LinkedHashMap<Character,Integer> hashMap=new LinkedHashMap<Character,Integer>();
        for(char item:chars){
            if(hashMap.containsKey(item))
                hashMap.put(item, hashMap.get(item)+1);
            else
                hashMap.put(item, 1);
            
        }
        for(char key:hashMap.keySet()){
            if(hashMap.get(key)==1)
                return key;
        }
        return null;
    }
    public static void main(String[] args){
        String str = "abaccdebff";
        FirstNotRepeatingChar test = new FirstNotRepeatingChar();
        System.out.println(test.firstNotRepeating(str));
    }
}

 

剑指offer-第五章优化时间和空间效率(在字符串中第一次出现切只出现一次的字符)

原文:http://www.cnblogs.com/hupp/p/4761783.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!