LeetCode刷题414-简单-第三大的数

Posted 布小禅

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode刷题414-简单-第三大的数相关的知识,希望对你有一定的参考价值。

☀️ 前言 ☀️

算法作为极其重要的一点,是大学生毕业找工作的核心竞争力,所以为了不落后与人,开始刷力扣算法题!

🙀 作者简介 🙀

大家好,我是布小禅,一个尽力让无情的代码变得生动有趣的IT小白,很高兴能偶认识你,关注我,每天坚持学点东西,我们以后就是大佬啦!

📢 博客主页:❤布小禅❤
📢 作者专栏:
❤Python❤
❤Java❤

❤力扣题❤

这是我刷第 44/100 道力扣简单题

💗 一、题目描述 💗

给你一个非空数组,返回此数组中 第三大的数 。如果不存在,则返回数组中最大的数。

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/third-maximum-number
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
示例1:

输入:[3, 2, 1]
输出:1
解释:第三大的数是 1

示例2:

输入:[1, 2]
输出:2
解释:第三大的数不存在, 所以返回最大的数 2

示例3:

输入:[2, 2, 3, 1]
输出:1
解释:注意,要求返回第三大的数,是指在所有不同数字中排第三大的数。
此例中存在两个值为 2 的数,它们都排第二。在所有不同数字中排第三大的数为 1

提示:1 <= nums.length <= 104
-231 <= nums[i] <= 231 - 1

💁 二、题目解析 💁

思 路 1 : \\color{green}{思路1:} 1

去除重复元素
判断
返回

🏃 三、代码 🏃

☁️ 1️⃣. python ☁️

class Solution:
    def thirdMax(self, nums: List[int]) -> int:
        nums = list(set(nums))
        nums.sort()
        if len(nums)<=2: return nums[-1]
        else: return nums[len(nums)-3]

❄️ 2️⃣. C# ❄️

public class Solution {
    public int ThirdMax(int[] nums) {
        HashSet<int> se = new HashSet<int>(nums);
        int m = 0;
        int[] numbers = new int[se.Count];
        foreach(int i in se){
            numbers[m] = i;
            m++;
        }
        Array.Sort(numbers);
        if (numbers.Length<=2) return numbers[numbers.Length-1];
        else return numbers[numbers.Length-3];
    }
}

🌔 结语 🌔

坚持最重要,每日一题必不可少!😸

期待你的关注和督促!😛

以上是关于LeetCode刷题414-简单-第三大的数的主要内容,如果未能解决你的问题,请参考以下文章

Leetcode刷题100天—414. 第三大的数( 数组)—day59

Leetcode刷题100天—414. 第三大的数( 数组)—day59

LeetCode Algorithm 414. 第三大的数

⭐算法入门⭐《线性枚举》简单07 —— LeetCode 414. 第三大的数

leetcode414. 第三大的数

LeetCode414. 第三大的数