Python 中尋找陣列中兩個唯一元素最大乘積的程式
假設我們有一個名為 nums 的數字列表,我們需要找到兩個唯一元素的最大乘積。
因此,如果輸入類似於 nums = [8, -3, 1, -5],則輸出將是 15,(-3)*(-5) = 15,這是此處的最大值。
要解決此問題,我們將遵循以下步驟 −
n := nums 的大小
nums_sort := 對列表 nums 進行排序
max_left := nums_sort[0] * nums_sort[1]
max_right := nums_sort[n-1] * nums_sort[n-2]
ans := max_left 和 max_right 的最大值
返回 ans
示例
讓我們看看以下實現以更好地理解
def solve(nums): nums_sort = sorted(nums) max_left = nums_sort[0] * nums_sort[1] max_right = nums_sort[-1] * nums_sort[-2] ans = max(max_left, max_right) return ans nums = [8, -3, 1, -5] print(solve(nums))
輸入
[8, -3, 1, -5]
輸出
15
廣告