每日OJ_牛客_最小差值_排序_C++_Java
目录
牛客_最小差值_排序
题目解析
C++代码
Java代码
牛客_最小差值_排序
最小差值
描述:
给你一个数组a,请你求出数组a中任意两个元素间差的绝对值的最小值。(2≤len(a)≤10^3)
题目解析
排序,然后计算相邻两个数之差的最小值即可。
C++代码
class Solution {
public:/*** 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可* 求最小差值* @param a int整型vector 数组a* @return int整型*/int minDifference(vector<int>& a) {sort(a.begin(), a.end());long long res = INT_MAX, n = a.size();for(int i = 0; i < n - 1; ++i){res = min(res, (long long)abs(a[i + 1] - a[i]));}return res;}
};
Java代码
import java.util.*;
public class Solution
{/*** 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可* 求最小差值* @param a int整型vector 数组a* @return int整型*/public int minDifference (int[] a) {// INT_MIN ~ INT_MAXArrays.sort(a);long ret = (long)1e16 + 10;for(int i = 1; i < a.length; i++){ret = Math.min(ret, (long)a[i] - a[i - 1]);}return (int)ret;}
}