leetcode之判断能否形成等差数列
序
本文主要记录一下leetcode之判断能否形成等差数列
题目
给你一个数字数组 arr 。
如果一个数列中,任意相邻两项的差总等于同一个常数,那么这个数列就称为 等差数列 。
如果可以重新排列数组形成等差数列,请返回 true ;否则,返回 false 。
示例 1:
输入:arr = [3,5,1]
输出:true
解释:对数组重新排序得到 [1,3,5] 或者 [5,3,1] ,任意相邻两项的差分别为 2 或 -2 ,可以形成等差数列。
示例 2:
输入:arr = [1,2,4]
输出:false
解释:无法通过重新排序得到等差数列。
提示:
2 <= arr.length <= 1000
-10^6 <= arr[i] <= 10^6
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/can-make-arithmetic-progression-from-sequence
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
题解
class Solution {
public boolean canMakeArithmeticProgression(int[] arr) {
Arrays.sort(arr);
int delta = arr[1] - arr[0];
for (int i = 2; i < arr.length; i++) {
if (arr[i] - arr[i - 1] != delta) {
return false;
}
}
return true;
}
}
小结
这里先对数组进行排序,然后遍历数据判断前后差是否相等,不等则立刻返回false,遍历完返回true。
doc
code-craft
spring boot , docker and so on 欢迎关注微信公众号: geek_luandun
推荐阅读
聊聊rocketmq的订阅关系
org/apache/rocketmq/client/impl/consumer/DefaultMQPushConsumerImpl.java
codecraft阅读 3.3k
【每日一题】T 秒后青蛙的位置
1377. T 秒后青蛙的位置关键词:深度优先题目来源:1377. T 秒后青蛙的位置 - 力扣(Leetcode)题目描述 {代码...} 给你一棵由 n 个顶点组成的无向树,顶点编号从 1 到 n。青蛙从 顶点 1 开始起跳。规则如下:在...
字节幺零二四阅读 663
【算法竞赛】力扣周赛(节选)2022-04-30
力扣周赛(节选)2022-04-306404. 将数组清空关键词:树状数组、找规律题目来源:6404. 将数组清空 - 力扣(Leetcode)——力扣第 103 场双周赛第4题题目描述 {代码...} 给你一个包含若干 互不相同 整数的数组 nums...
字节幺零二四阅读 640
【每日一题】翻转子数组得到最大的数组值
给你一个整数数组 nums 。「数组值」定义为所有满足 0 <= i < nums.length-1 的 |nums[i]-nums[i+1]| 的和。
字节幺零二四阅读 590
【每日一题】摘水果
在一个无限的 x 坐标轴上,有许多水果分布在其中某些位置。给你一个二维整数数组 fruits ,其中 fruits[i] = [positioni, amounti] 表示共有 amounti 个水果放置在 positioni 上。fruits 已经按 positioni 升序排...
字节幺零二四阅读 524
leetcode 2413 最小偶倍数
今天这题比较简单,一行代码就解决了,思路其实简单,就是判断下当前数的奇偶性,如果是偶数,那么最小公倍数肯定就是数本身;如果是奇数,那么就是两个数的乘积。
MMzhe阅读 457
【每日一题】使二叉树所有路径值相等的最小代价
给你一个整数 n 表示一棵 满二叉树 里面节点的数目,节点编号从 1 到 n 。根节点编号为 1 ,树中每个非叶子节点 i 都有两个孩子,分别是左孩子 2 * i 和右孩子 2 * i + 1 。
字节幺零二四阅读 454
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。