【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;
}
相关推荐
bai_lan_ya7 小时前
使用linux的io文件操作综合实验_处理表格
linux·服务器·算法
计算机安禾7 小时前
【C语言程序设计】第36篇:二进制文件的读写
c语言·开发语言·c++·算法·github·visual studio code·visual studio
ZPC82107 小时前
OLOv11 + 深度相机的方案实现高精度3D定位
人工智能·数码相机·算法·机器人
_日拱一卒7 小时前
LeetCode:字母异位词分组
算法·leetcode·职场和发展
Dfreedom.7 小时前
机器学习经典算法全景解析与演进脉络(监督学习篇)
人工智能·学习·算法·机器学习·监督学习
Zaly.7 小时前
【Python刷题】LeetCode 3567 子矩阵的最小绝对差
python·leetcode·矩阵
2301_807367197 小时前
C++代码风格检查工具
开发语言·c++·算法
Morwit7 小时前
*【力扣hot100】 215. 数组中的第K个最大元素
数据结构·c++·算法·leetcode·职场和发展
奔袭的算法工程师7 小时前
用AI写天线阵列排布算法
人工智能·算法·信号处理
ab1515177 小时前
3.20二刷基础121、127,完成进阶61、62
数据结构·算法·排序算法