【C语言刷力扣】1502.判断能否形成等差数列

题目:

解题思路;

先对数组进行升序排序,再用循环对比两相邻元素之间的差值。若出现不同,即不是等差数列。

时间复杂度:

空间复杂度:

复制代码
int compare(const void* a, const void* b) {
    return (*(int *)b - *(int *)a);
}

bool canMakeArithmeticProgression(int* arr, int arrSize) {
    qsort(arr, arrSize, sizeof(int), compare);
    long long int k = arr[1] - arr[0];
    for (int i = 2; i < arrSize; i++) {
        if (arr[i] - arr[i - 1] != k) return false;
    }
    return true;
}
相关推荐
明洞日记3 分钟前
【软考每日一练007】位图计算与内存管理深度全解
c++·算法·ai·操作系统·进程
敲敲了个代码5 分钟前
前端指纹技术是如何实现的?(Canvas、Audio、硬件API 核心原理解密)
前端·javascript·学习·算法·面试·web
学编程就要猛6 分钟前
算法:5.在排序数组中查找元素的第⼀个和最后⼀个位置
算法
夏鹏今天学习了吗13 分钟前
【LeetCode热题100(84/100)】乘积最大子数组
算法·leetcode·职场和发展
坏柠18 分钟前
ESP32-S3 的 I²C:从“能连设备”到“工程上用得顺”
c语言·开发语言
进击的小头19 分钟前
C语言实现设计模式的核心基石
c语言·开发语言·设计模式
Yupureki20 分钟前
《算法竞赛从入门到国奖》算法基础:入门篇-递归初阶
c语言·开发语言·数据结构·c++·算法·visual studio
a35354138222 分钟前
牛顿迭代法中的雅克比矩阵几何意义
线性代数·算法
Coder个人博客25 分钟前
Linux6.19-ARM64 crypto NH-Poly1305 NEON子模块深入分析
linux·网络·算法·车载系统·系统架构·系统安全·鸿蒙系统
自然语28 分钟前
三维场景管理类位姿抖动优化计划
人工智能·数码相机·算法