題目描述:
給你乙個混合字串 s ,請你返回 s 中 第二大 的數字,如果不存在第二大的數字,請你返回 -1 。
混合字串 由小寫英文本母和數字組成。
示例 1:
輸入:s = 「dfa12321afd」
輸出:2
解釋:出現在 s 中的數字包括 [1, 2, 3] 。第二大的數字是 2 。
示例 2:
輸入:s = 「abc1111」
輸出:-1
解釋:出現在 s 中的數字只包含 [1] 。沒有第二大的數字。
1 <= s.length <= 500
s 只包含小寫英文本母和(或)數字。
方法1:
(1)先統計出字串中存在的數字字元;
(2)判斷是否存在第二大的數字,若存在,返回,否則返回-1
class
solution
}bool sign=
false
;for
(int i=counts.
size()
-1;i>=0;
--i)
sign=
true
;//說明找到最大的了}}
//說明沒找到第二大的數字字元
return-1
;}};
go語言實現
func
secondhighest
(s string
)int
} sign :=
false
for i:=
9;i>=
0;i--
sign=
true}}
return-1
}
LeetCode 1796 字串中第二大的數字
給你乙個混合字串 s 請你返回 s 中第二大的數字,如果不存在第二大的數字,請你返回 1 混合字串 由小寫英文本母和數字組成。示例 1 輸入 s dfa12321afd 輸出 2 解釋 出現在 s 中的數字包括 1,2,3 第二大的數字是 2 示例 2 輸入 s abc1111 輸出 1解釋 出現在...
查詢陣列中第二大的數字
define arrsize 10 define minnumber 0xffffffff define find sucess 1 define find fail 0 int getsecondmaxnumber int buffer,int secondmax else if buffer i...
找出陣列中第二大的數
給你乙個陣列,求出其中第二大的數 比如陣列a 1,2,3,4,5,6,7,8,9 其中第二大的數為8,返回8即可 分析 一般情況下都是求最大值,呵呵,這道題很有趣。想想也不難,可以在掃瞄最大值的同時,求出第二大的值,就是比當前最大值大的數賦給最大值,然後用第二大的值與先前的最大值比較,如果小,則用先...