java特性

2021/9/13 22:07:52

本文主要是介绍java特性,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

java

1.求数组的最大值

int ans = Arrays.stream(dist).max().getAsInt();

2.最小堆

PriorityQueue<Edge> pq=new PriorityQueue<>((x, y) -> x.cost - y.cost);

3.前缀和的两种写法

// 声明长度为n+1,后续判断的时候为<=
int[] prefixSums = new int[n + 1];
for (int i = 0; i < n; i++) {
    prefixSums[i + 1] = prefixSums[i] + arr[i];
}
// 声明长度为n
int[] pre = new int[n];
pre[0] = w[0];
for (int i = 1; i < w.length; i++) {
    pre[i] = pre[i - 1] + w[i];
}

4.new Comparator

  • o1 - o2 :正常 升序排序
  • o2 - o1 :降序

5.int转化为2 8 16进制字符串

Integer.toString(512,2)
Integer.toString(512,8)
Integer.toString(512,16)

6.常用做题套路

// 计算欧式距离
public static int getInstance(int[] i, int[] j) {
    return Math.abs(i[0] - j[0]) * Math.abs(i[0] - j[0]) + Math.abs(i[1] - j[1]) * Math.abs(i[1] - j[1]);
}
// 计算麦哈顿距离
public static int getInstance(int[] i, int[] j) {
    return Math.abs(i[0] - j[0]) + Math.abs(i[1] - j[1]);
}



这篇关于java特性的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程