【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;
}
相关推荐
汀、人工智能1 小时前
[特殊字符] 第21课:最长有效括号
数据结构·算法·数据库架构·图论·bfs·最长有效括号
Boop_wu1 小时前
[Java 算法] 字符串
linux·运维·服务器·数据结构·算法·leetcode
故事和你912 小时前
洛谷-算法1-2-排序2
开发语言·数据结构·c++·算法·动态规划·图论
Fcy6482 小时前
算法基础详解(三)前缀和与差分算法
算法·前缀和·差分
kvo7f2JTy2 小时前
基于机器学习算法的web入侵检测系统设计与实现
前端·算法·机器学习
List<String> error_P3 小时前
蓝桥杯最后几天冲刺:暴力大法(一)
算法·职场和发展·蓝桥杯
Hou'3 小时前
从0到1的C语言传奇之路
c语言·开发语言
流云鹤4 小时前
Codeforces Round 1090 (Div. 4)
c++·算法
wljy14 小时前
第十三届蓝桥杯大赛软件赛省赛C/C++ 大学 B 组(个人见解,已完结)
c语言·c++·算法·蓝桥杯·stl
清空mega5 小时前
C++中关于数学的一些语法回忆(2)
开发语言·c++·算法