华为机试题---统计并输出每个字符在字符串中出现的次数
2014-03-10 01:23
639 查看
一、问题描述
手动输入一个字符串,仅限小写字母,统计并输出每个字符在字符串中出现的次数,并输出。提示(可以用Map) 实例: 输入:aaabbbccc 输出:
* a 3
* b 3
* c 3
二、算法
1. 由于map存储结构为key-value,所以选择map存储,类型为: <Character,Integer>
2.由结果可知,a,b,c是按照字母顺序输出的,所有用sortedMap,通过看源代码可以知道,在sortedMap中载入比较器,实现了自然顺序排序。
三、算法
四、测试类
手动输入一个字符串,仅限小写字母,统计并输出每个字符在字符串中出现的次数,并输出。提示(可以用Map) 实例: 输入:aaabbbccc 输出:
* a 3
* b 3
* c 3
二、算法
1. 由于map存储结构为key-value,所以选择map存储,类型为: <Character,Integer>
2.由结果可知,a,b,c是按照字母顺序输出的,所有用sortedMap,通过看源代码可以知道,在sortedMap中载入比较器,实现了自然顺序排序。
public interface SortedMap<K,V> extends Map<K,V> { Comparator<? super K> comparator();
三、算法
/** * Gets result map. * @param str * @return */ private Map<Character, Integer> getCountMap(String str) { SortedMap<Character, Integer> countMap = new TreeMap<Character, Integer>(); char[] cellArray = str.toCharArray(); for (int i = 0; i < cellArray.length; i++) { if (countMap.containsKey(cellArray[i])) { countMap.put(cellArray[i], countMap.get(cellArray[i]) + 1); } else { countMap.put(cellArray[i], 1); } } return countMap; } /** * Gets input string * @return */ private String getInputStr() { Scanner cin = new Scanner(System.in); String inputStr = cin.nextLine().trim(); return inputStr; }
四、测试类
public static final String REGEX = "^[a-z]*$"; public static void main(String[] args) { Main6 m = new Main6(); String inputStr = m.getInputStr(); Map<Character, Integer> countMap = null; if (inputStr.matches(REGEX)) { countMap = m.getCountMap(inputStr); for (Map.Entry<Character, Integer> entry : countMap.entrySet()) { System.out.println(entry.getKey() + ":" + entry.getValue()); } } else { //do exception } }
aaabbbccc a:3 b:3 c:3
相关文章推荐
- 统计字符串”abadcdffbaeba”中每个字符出现了多少次,按次数排序并输出
- 手动输入一个字符串,仅限小写字母,统计并输出每个字符在字符串中出现的次数,并输出。
- 从文件读取包含数字和字母字符串,统计每个字符出现的次数,将次数输出到另外一个文件
- 统计一个字符串中每个字符出现的次数,并按自然顺序输出
- 统计字符串”abadcdffbaeba”中每个字符出现了多少次,按次数排序并输出
- 统计字符串中的每个字符出现次数
- 统计字符串中每个字符出现的次数
- js统计字符串中每个字符出现的次数
- Java小程序:字符串中,统计每个字符出现的次数
- java中TreeMap的用法-统计字符串中每个字符出现的次数
- java统计字符串中每个字符出现的次数并查询出现次数最多的字符和次数
- Scheme 练习 - 统计字符串中每个字符出现的次数
- C++统计字符串中每个字符出现的次数
- 统计字符串中每个字符出现的次数 打印结果是:a(2)b(1)
- JavaScript统计字符串中每个字符出现次数完整实例
- 从控制台获取一串字符串,并对每个字符出现的次数进行统计
- 集合框架-统计字符串中每个字符出现的次数案例图解
- 利用自然顺序统计字符串中每个字符的出现次数
- 华为机试题:删除字符串中出现次数最少的字符
- 集合框架_统计字符串中每个字符出现的次数案例代码实现