求字符串中字符的出現的最多次數和最少次數,刪除後並獲得最終字符

/*

*功能描述:刪除字符串中字符個數最少的字符,最少字符串有多個,最少的要全部刪除

*               然後返回該子字符串。

*輸入:asdasdas

*輸出:asasas

*/

import java.util.Collections;

import java.util.Map;

import java.util.TreeMap;



class Main13{




   public static void main(String[] args) {

       String str = "eeevsssccvc";

Integer min=10;

char str1='a';

Map<Character,Integer> map=getCharAccount(str);

       for(Map.Entry<Character,Integer> ma:map.entrySet()){

if(ma.getValue()<min){

min=ma.getValue();

str1=ma.getKey();

}

}

StringBuffer sb=new StringBuffer();


String[] ss=str.split(String.valueOf(str1));

for(int i=0;i<ss.length;i++){

sb.append(ss[i]);

}

System.out.println(sb.toString());

   }


//統計每個字符串出現的次數存在map類

public static Map<Character,Integer> getCharAccount(String str){

char[] ch=str.toCharArray();

Map<Character,Integer> map=new TreeMap<Character,Integer>();

for(int i=0;i<ch.length;i++){

if(!map.containsKey(ch[i])){

map.put(ch[i],new Integer(1));


}else{

Integer in = map.get(ch[i])+1;

map.put(ch[i],in);


}


}



return map;



}


}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章