解法一
考虑数组长度小于等于2的边界情况,返回true。
对数组进行升序排序,依次判断相邻两数之间的差是否相等,如有不相等的情况返回false,否则返回true。
import java.util.Arrays;
class Solution {
public boolean canMakeArithmeticProgression(int[] arr) {
if (arr.length <= 2) {
return true;
}
Arrays.sort(arr);
boolean flag = true;
int delta = arr[1] - arr[0];
for (int i = 2; i < arr.length; ++i) {
if ((arr[i] - arr[i - 1]) != delta) {
flag = false;
break;
}
}
return flag;
}
}