美文网首页
414. 第三大的数

414. 第三大的数

作者: 最尾一名 | 来源:发表于2020-03-03 15:57 被阅读0次

原题

https://leetcode-cn.com/problems/third-maximum-number/

解题思路

去重之后,维护一个大小为 3 的有序数组,每次找到更大的数字时,更新数组。

代码

/**
 * @param {number[]} nums
 * @return {number}
 */
const sortedPush = (arr, target) => {
    arr.shift();
    if (target > arr[1]) {
        arr.push(target)
    } else if (target < arr[0]) {
        arr.unshift(target);
    } else {
        arr.unshift(arr[0]);
        arr[1] = target;
    }
}

var thirdMax = function(nums) {
    if (!nums.length) return 0;
    const noDumplicateArray = Array.from(new Set(nums));
    const kArray = new Array();
    let isFull = false;
    for (let i = 0; i < noDumplicateArray.length; ++i) {
        if (!isFull) {
            kArray.push(noDumplicateArray[i]);
            isFull = (kArray.length > 2);
            kArray.sort((a, b) => a - b);
        } else if (noDumplicateArray[i] > kArray[0]) {
            sortedPush(kArray, noDumplicateArray[i]);
        }
    }
    return isFull ? kArray[0] : kArray[kArray.length - 1];
};

复杂度

  • 时间复杂度 O(N)
  • 空间复杂度 O(N)

相关文章

  • LeetCode 414. 第三大的数

    题目地址(414. 第三大的数) https://leetcode-cn.com/problems/third-m...

  • C语言第五次作业

    排序 88. 合并两个有序数组 先合并后排序 414. 第三大的数 先排序后取值 628. 三个数的最大乘积 先排...

  • 414. 第三大的数

    内容 给定一个非空数组,返回此数组中第三大的数。如果不存在,则返回数组中最大的数。要求算法时间复杂度必须是O(n)...

  • 414. 第三大的数

    原题 https://leetcode-cn.com/problems/third-maximum-number/...

  • 414. 第三大的数

    给定一个非空数组,返回此数组中第三大的数。如果不存在,则返回数组中最大的数。要求算法时间复杂度必须是O(n)。 示...

  • [简单]414.第三大的数

    给定一个非空数组,返回此数组中第三大的数。如果不存在,则返回数组中最大的数。要求算法时间复杂度必须是O(n)。 此...

  • LeetCode 414. 第三大的数 Third Maximu

    【题目描述】给定一个非空数组,返回此数组中第三大的数。如果不存在,则返回数组中最大的数。要求算法时间复杂度必须是O...

  • 414-第三大的数

    第三大的数 题目 给定一个非空数组,返回此数组中第三大的数。如果不存在,则返回数组中最大的数。要求算法时间复杂度必...

  • 第三大的数

    给定一个非空数组,返回此数组中第三大的数。如果不存在,则返回数组中最大的数。要求算法时间复杂度必须是O(n)。 示...

  • 414. Third Maximum Number 第三大元素

    Given a non-empty array of integers, return the third max...

网友评论

      本文标题:414. 第三大的数

      本文链接:https://www.haomeiwen.com/subject/spshlhtx.html