「 每日一练,快乐水题 」1796. 字符串中第二大的数字

Posted 谁吃薄荷糖

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了「 每日一练,快乐水题 」1796. 字符串中第二大的数字相关的知识,希望对你有一定的参考价值。

文章目录


🔴力扣原题:

1796. 字符串中第二大的数字

🟠题目简述:

给你一个混合字符串 s ,请你返回 s 中 第二大 的数字,如果不存在第二大的数字,请你返回 -1 。

混合字符串 由小写英文字母和数字组成。

🟡解题思路:

  1. 使用isdigit函数筛选出数字;
  2. 使用set对数字进行排序;
  3. over;

🟢C++代码:

class Solution 
public:
    int secondHighest(string s) 
        int ret = -1;
        set<int> st;

        for (auto c : s) 
        
            if (isdigit(c))
             
                int num = c - '0';

                st.emplace(num);
            
        

        if(st.size() >= 2)
        
            auto it = st.end();
            --it;
            ret = *(--it);
        

        return ret;
    
;

🔵结果展示:

以上是关于「 每日一练,快乐水题 」1796. 字符串中第二大的数字的主要内容,如果未能解决你的问题,请参考以下文章

「 每日一练,快乐水题 」1796. 字符串中第二大的数字

「 每日一练,快乐水题 」717. 1比特与2比特字符

「 每日一练,快乐水题 」717. 1比特与2比特字符

「 每日一练,快乐水题 」917. 仅仅反转字母

「 每日一练,快乐水题 」917. 仅仅反转字母

「 每日一练,快乐水题 」599. 两个列表的最小索引总和