ETH官方钱包

前往
大廳
主題

LeetCode - 2733. Neither Minimum nor Maximum 解題心得

Not In My Back Yard | 2024-08-27 12:00:11 | 巴幣 0 | 人氣 34

題目連結(jié):


題目意譯:
給定一個(gè)包含相異正整數(shù)的整數(shù)陣列 nums,請(qǐng)找到一個(gè)既不是最小值也不是最大值的數(shù)字並將其回傳。如果此數(shù)不存在,則回傳 -1。

回傳選定的整數(shù)。

限制:
1 ≦ nums.length ≦ 100
1 ≦ nums[i] ≦ 100
nums 中所有數(shù)字彼此相異。



範(fàn)例測(cè)資:
範(fàn)例 1:
輸入: nums = [3,2,1,4]
輸出: 2
解釋: 此例中最小值為 1、最大值為 4。因此 2 和 3 各自都是可以合法的答案。

範(fàn)例 2:
輸入: nums = [1,2]
輸出: -1
解釋: 由於 nums 中不存在既不是最小值也不是最大值的數(shù)字,我們無(wú)法選擇符合條件的數(shù)字。因此答案不存在。

範(fàn)例 3:
輸入: nums = [2,1,3]
輸出: 2
解釋: 由於 2 既不是最大值也不是最小值,因此其為唯一答案。


解題思維:
可以看到 nums 的長(zhǎng)度 ≦ 2 時(shí)不會(huì)有答案。因此此時(shí)直接回傳 -1 即可。

而剩下的情況則直接 nums 裡挑第二小的數(shù)字(看要是排序,還是用類似這題的方式找第二小)回傳即可。




此次分享到此為止,如有任何更加簡(jiǎn)潔的想法或是有說(shuō)明不清楚之地方,也煩請(qǐng)各位大大撥冗討論。

創(chuàng)作回應(yīng)

更多創(chuàng)作