以下是一个解决方案的示例代码:
def maximum_product(nums):
nums.sort() # 将数字列表按升序排序
n = len(nums)
# 返回最大的三个数字之积
return max(nums[n-1] * nums[n-2] * nums[n-3], nums[0] * nums[1] * nums[n-1])
# 示例用法
nums = [1, 2, 3, 4, 5]
print(maximum_product(nums)) # 输出:60
在这个解决方案中,我们首先对数字列表进行排序。然后,我们分两种情况考虑最大的三个数字之积:一种情况是最大的三个数字都是正数,另一种情况是最大的三个数字中有负数。我们分别计算这两种情况下的最大乘积,并返回其中的最大值。在示例中,给定的数字列表是[1, 2, 3, 4, 5],最大的三个数字是3、4和5,它们的乘积为60。