这篇文章主要给大家介绍了关于Java算法比赛常用方法实例总结的相关资料,文中给出了详细的实例介绍的非常详细,对大家学习java算法具有一定的参考学习价值,需要的朋友可以参考下
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
总结
到此这篇关于Java算法比赛常用方法的文章就介绍到这了,更多相关Java算法比赛方法内容请搜索编程学习网以前的文章希望大家以后多多支持编程学习网!
本文标题为:Java算法比赛常用方法实例总结
基础教程推荐
- Java实现线程插队的示例代码 2022-09-03
- JDK数组阻塞队列源码深入分析总结 2023-04-18
- ConditionalOnProperty配置swagger不生效问题及解决 2023-01-02
- Java并发编程进阶之线程控制篇 2023-03-07
- Java文件管理操作的知识点整理 2023-05-19
- Java实现查找文件和替换文件内容 2023-04-06
- Java数据结构之对象比较详解 2023-03-07
- java基础知识之FileInputStream流的使用 2023-08-11
- springboot自定义starter方法及注解实例 2023-03-31
- java实现多人聊天系统 2023-05-19