使用 Python 找出字串中的第二大數字這一程式
假設我們有一個字母數字字串 s,我們必須在 s 中找到出現的第二大數字,如果沒有這樣的字串,則返回 -1。
因此,如果輸入為 s = "p84t3ho1n",則輸出為 4,因為數字為 [1,3,4,8],因此第二大數字為 4。
為了解決這個問題,我們將遵循以下步驟:
lst := 一組新的集合
對於 s 中的每個字母,執行以下操作
如果字母不是字母,則
將字母作為整數插入到 lst
如果 lst 大小 <= 1,則
返回 -1
返回對 lst 進行排序後的倒數第二個元素
讓我們看看以下實現,以獲得更好的理解:
示例
def solve(s): lst = set() for let in s: if not let.isalpha(): lst.add(int(let)) if len(lst) <= 1: return -1 return sorted(list(lst))[len(lst) - 2] s = "p84t3ho1n" print(solve(s))
輸入
"hello", "hlelo"
輸出
True
廣告