Java算法竞赛中常见方法实例汇总有哪些?

2026-05-15 22:211阅读0评论SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计722个文字,预计阅读时间需要3分钟。

Java算法竞赛中常见方法实例汇总有哪些?

1. 开方:使用 Math.sqrt(x);

2.幂运算:x 的 a 次方,用 Math.pow(x, a) 计算;

3.绝对值:获取 x 的绝对值,用 Math.abs(x) 实现;

4.大数运算:BigInteger 进行加、减、乘、除、取余操作,例如 c.add(d),c.subtract(d),c.multiply(d),c.divide(d),c.mod(d);

5.判断回文:使用 public static boolean isPalindrome(String str) 方法。

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:去重

Java算法竞赛中常见方法实例汇总有哪些?

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算法比赛方法内容请搜索自由互联以前的文章或继续浏览下面的相关文章希望大家以后多多支持自由互联!

本文共计722个文字,预计阅读时间需要3分钟。

Java算法竞赛中常见方法实例汇总有哪些?

1. 开方:使用 Math.sqrt(x);

2.幂运算:x 的 a 次方,用 Math.pow(x, a) 计算;

3.绝对值:获取 x 的绝对值,用 Math.abs(x) 实现;

4.大数运算:BigInteger 进行加、减、乘、除、取余操作,例如 c.add(d),c.subtract(d),c.multiply(d),c.divide(d),c.mod(d);

5.判断回文:使用 public static boolean isPalindrome(String str) 方法。

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:去重

Java算法竞赛中常见方法实例汇总有哪些?

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算法比赛方法内容请搜索自由互联以前的文章或继续浏览下面的相关文章希望大家以后多多支持自由互联!