版权声明:LiuK°版权所有 https://blog.csdn.net/weixin_43401946/article/details/83042201
字节数量统计算法
今天在整理一些算法的代码,看到了许多以前学习java时抽取的一些小算法,在平时也经常用得到,很方便,今天要分享的是字节数量统计算法,后面将简述思路和贴出代码。
算法思想:
首先我们一般得到的是字符串str,这时我们可以调用java中的toCharArray()方法获得字符串数组(char[] ch=str.toCharArray());
创建一个map集合,接着遍历这个数组,每次判断map集合中是否存在这个字节也就是key值(map.containsKey©),若已经存在,则对value进行增1操作,若没有,则以该字节为key 存入map 即:map.put(c,1).
思路很简单,利用了java中map集合的特点,代码贴在下面,有需要的可以根据自己的需求进行更改。
package cn.wxxy.algorithm01;
import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;
//字节数量统计算法
public class ByteStatisticsAlgorithm {
public static void main(String[] args) {
Scanner input=new Scanner(System.in);
System.out.println("请输入字符串:");
String str=input.next();
ByteStatistics(str);
}
private static void ByteStatistics(String str) {
char[] ch=str.toCharArray();
Map<Character,Integer> map=new HashMap<>();
for (char c : ch) {
if(map.containsKey(c)){//判断map中是否存在Key值c
map.put(c,map.get(c)+1);//如果c在Map中存在 则c所对应的Value加一
}
else {
map.put(c,1);//Map中不存在c则存入map.put(c,1);
}
}
System.out.println(map);
}
}
后续会有更多的小算法或者java基础知识更新。