题目描述:
给你一个数字数组 arr 。
如果一个数列中,任意相邻两项的差总等于同一个常数,那么这个数列就称为 等差数列 。
如果可以重新排列数组形成等差数列,请返回 true ;否则,返回 false 。
输入:
arr = [3,5,1]
arr = [1,2,4]
输出:
true
false
题意:
题目描述
题解:
排个序,然后按照等差数列的定义判断
代码:
class Solution {
public boolean canMakeArithmeticProgression(int[] arr) {
if(arr.length <= 2) return true;
Arrays.sort(arr);
int dis = arr[1] - arr[0];
for(int i = 2; i < arr.length; i ++){
if(arr[i] - arr[i - 1] != dis) return false;
}
return true;
}
}