力扣1502. 判断能否形成等差数列(Java,排序法)

Problem: 1502. 判断能否形成等差数列

文章目录

  • 思路
  • 解题方法
  • 复杂度
  • Code

思路

根据简单的数学知识易得等差数列公差相等

解题方法

1.对数列排序
2.遍历数列,判断相邻两数的差是否相等。

复杂度

  • 时间复杂度:

O ( n ) O(n) O(n)

  • 空间复杂度:

O ( 1 ) O(1) O(1)

Code


class Solution {
    //Time Complexity: O(n)
    //Space Complexity: O(n)
    public boolean canMakeArithmeticProgression(int[] arr) {
        //对数组排序
        Arrays.sort(arr);
        int allowance = arr[1] - arr[0];
        for (int i = 1; i < arr.length - 1; ++i) {
            if (arr[i + 1] - arr[i] != allowance) {
                return false;
            }
        }
        return true;
    }
}

你可能感兴趣的:(leetcode,java,算法)