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

更新于: 2021 年 10 月 12 日

987 次浏览

开启您的职业生涯

完成课程,获得认证

开始
广告
© . All rights reserved.