这里我将为接下来的哈夫曼压缩文件做前期工作
介绍一下我自己是如何统计词频的,这里我用到HashMap以及entrySet()以及字符串切割
public static int[] getvalue(String s){
HashMap<Character,Integer> map = new HashMap<>();
for (int i = 0; i < s.length(); i++) {
if(!map.containsKey(s.charAt(i))){
map.put(s.charAt(i),1);
}else {
map.put(s.charAt(i),map.get(s.charAt(i))+1);
}
}
Set<Map.Entry<Character,Integer>> set = map.entrySet();
int[] value = new int[set.size()];
//获得所有权值
int j = -1 ;
for (Map.Entry<Character,Integer> k : set){
value[++j] = Integer.parseInt(new StringBuilder(k.toString()).substring(2,k.toString().length()));
}
return value;
}
该博客介绍了如何利用HashMap统计字符串中每个字符的出现频率,为哈夫曼压缩做前期准备。通过遍历字符串,将字符作为键,出现次数作为值存储在HashMap中,然后转换为整数数组。这种方法有效地统计了输入文本的基础信息,为后续的压缩步骤奠定了基础。
6778

被折叠的 条评论
为什么被折叠?



