其他分享
首页 > 其他分享> > LeetCode 414. 第三大的数-C语言

LeetCode 414. 第三大的数-C语言

作者:互联网

LeetCode 414. 第三大的数-C语言

题目描述
在这里插入图片描述

解题思路
1.设置数组max[3]用于保存前三大的值,初始化为LONG_MIN意为最小值
2.遍历数组对前三大的值进行更新
3.判断max[2]是否存在,若不存在直接返回max[0]

代码

int thirdMax(int* nums, int numsSize){
    long max[3] = {LONG_MIN,LONG_MIN,LONG_MIN}; 
    for (int i = 0; i < numsSize; i++) {
        if (nums[i] > max[0]) {
            max[2] = max[1];
            max[1] = max[0];
            max[0] = nums[i];
        }
        else if (nums[i] < max[0] && nums[i] > max[1]) {
            max[2] = max[1];
            max[1] = nums[i];
        }
        else if (nums[i] < max[1] && nums[i] > max[2]) {
            max[2] = nums[i];
        }
    }
    if (max[2] != LONG_MIN) {
        return max[2];
    }
    return max[0];
}

在这里插入图片描述

标签:numsSize,nums,int,max,MIN,LONG,C语言,414,LeetCode
来源: https://blog.csdn.net/qq_45401555/article/details/113791606