0 引言
利用sort内置函数来解决找列表中最大三个数的乘积。
1 问题
给出一个正整数型数组nums(不考虑有负数的情况),在数组中找出由三个数组组成的最大乘积值,并输出这个乘积。
示例1:
输入:nums=「1,2,3」
输出:6
示例2:
输入:nums=「1,2,3,4」
输出:24
2 方法
这里的方法调用到的内置函数sorted
首先建立一个列表nums=[1,3,6,5]可以看出列表中的数未按顺序排列。
然后令nums1=sorted(nums)得到一个新函数nums1并用sorted函数对旧列表里的数字进行排序
因为要得到三个最大数字的乘积因为已经由从小到大排序所以直接用列表中的查来找到最大的三个数分别是nums[-1],nums[-2]nums[-3]
最后用x=nums[-1]*nums[-2]*nums[-3]来表示乘积并用
Print(‘{}为最大三个数组成的乘积’.format{x})
3 实验结果与讨论
通过实验、实践等证明提出的方法是有效的,是能够解决开头提出的问题。
代码清单 1
Courier New字体,23磅行间距 |
nums=[1,2,3,4] |
nums1=sorted(nums) |
x=nums1[-1]*nums1[-2]*nums1[-3] |
print(‘{}为最大的三个数组成的最大乘积’.format(x)) |
4 结语
针对使用sort内置函数排序数列来找出最大三个数的乘积问题,提出利用sort内置函数来解决找列表中最大三个数的乘积方法,通过实验,证明该方法是有效的,本文的方法有不足在于找列表中最大的三个数使用的倒数三个数,可以直接使用倒叙直接取前三位数字更为简便,以后可以继续研究数据大且多的列表来排序。