Java算法比赛常用方法实例总结
作者:终生成长者 时间:2023-11-28 07:15:26
1. 开方:Math.sqrt(x);
2. x的a方:Math.pow(x,a);
3. 绝对值:Math.abs(x);
4. BigInteger:大数(加,减,乘,除,取余)
c.add(d) ; c.subtract(d);c.multiply(d);c.divide(d);c.mod(d)
5. 判断回文:
public static void main(String[] args) {
String list="12321";
StringBuilder str=new StringBuilder(list);
if (str.reverse().toString().equals(list)){
System.out.println(true);
}
}
6. HashMap
(key,value)put,get,remove,获取key使用keySet()
7.HashSet:去重
8.字符串相关
6.字符串转化成字符数组
7.字符数组转发成字符串 String helloString = new String(helloArray);
8.忽略字符串大小写的比较方法,这就是 equalsIgnoreCase( )方法。同样返回boolean值。
9.去除首尾空白字符串 trim()
10.包含子字符串contains
补充:hashMap按值排序
输入
第一行 输入n个字符串
其余n行 :n个字符串
输出每个字符串从大到小出现次数
格式 出现次数 - 字符串
eg:
5
2 -1 -1 22
1 11 66 0
1 28 74 35
3 35 28 7
2 -1 -1 22
实现代码
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Map<String, Integer>map=new HashMap<>();
Scanner sca=new Scanner(System.in);
int n=sca.nextInt();
sca.nextLine();
for(int i=0;i<n;i++) {
String str=sca.nextLine();
int num=map.getOrDefault(str, 0)+1;
map.put(str, num);
}
List<Map.Entry<String, Integer>>list=new ArrayList<>();
for(Map.Entry<String, Integer>mv:map.entrySet()) {
list.add(mv);
}
Collections.sort(list,new Comparator<Map.Entry<String, Integer>>() {
@Override
public int compare(Entry<String, Integer> o1, Entry<String, Integer> o2) {
// TODO Auto-generated method stub
return o2.getValue()-o1.getValue();
}
});
System.out.println();
for(int i=0;i<list.size();i++) {
Map.Entry<String, Integer> mvEntry=list.get(i);
String key=mvEntry.getKey();
Integer value=mvEntry.getValue();
System.out.println(value +" - "+ key);
}
}
}
输出
2 - 2 -1 -1 22
1 - 1 28 74 35
1 - 1 11 66 0
1 - 3 35 28 7
来源:https://blog.csdn.net/qq_51537858/article/details/130529480
标签:java,算法,比赛
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
Android布局之LinearLayout自定义高亮背景的方法
2022-07-05 09:48:10
通过实例学习JAVA对象转成XML输出
2023-01-14 15:25:35
![](https://img.aspxhome.com/file/2023/8/89478_0s.jpg)
java Long类型转为String类型的两种方式及区别说明
2022-11-12 18:03:38
Java 的 FileFilter文件过滤与readline读行操作实例代码
2022-04-09 07:22:53
JAVA遍历Map集合的几种方法汇总
2021-09-01 12:34:07
java基于递归算法实现汉诺塔问题实例
2022-10-22 00:16:14
Spring boot如何配置请求的入参和出参json数据格式
2023-10-23 17:27:48
详解Android自定义控件属性
2023-09-27 18:00:34
![](https://img.aspxhome.com/file/2023/7/126767_0s.png)
Java封装公共Result结果返回类的实现
2023-06-17 08:47:47
![](https://img.aspxhome.com/file/2023/2/57502_0s.jpg)
C#实现去除Strings中空格的方法
2023-12-01 10:54:10
C#入门教程之集合ArrayList用法详解
2022-04-30 06:32:13
![](https://img.aspxhome.com/file/2023/8/119568_0s.png)
Android的ImageButton当显示Drawable图片时就不显示文字
2023-11-25 17:40:00
Android自定义标尺滑动选择值效果
2022-06-30 20:09:27
![](https://img.aspxhome.com/file/2023/2/138862_0s.jpg)
IDEA远程连接HBase及其Java API实战详解
2023-11-27 21:54:46
![](https://img.aspxhome.com/file/2023/9/60169_0s.png)
C#中#define后面只加一个参数的解释
2022-09-06 07:23:55
Android手机联系人带字母索引的快速查找
2022-12-03 05:38:13
![](https://img.aspxhome.com/file/2023/5/98685_0s.png)
Mybatis如何传入多个参数的实现代码
2022-02-26 02:52:24
SpringBoot整合SSO(single sign on)单点登录
2022-02-02 03:39:40
![](https://img.aspxhome.com/file/2023/7/66517_0s.jpg)
Java Bean 作用域及它的几种类型介绍
2022-12-02 20:39:42
![](https://img.aspxhome.com/file/2023/9/75479_0s.png)
详解Android Automotive车载应用对驾驶模式Safe Drive Mode的适配
2022-01-15 07:12:20