• 每日力扣628


    给你一个整型数组 nums ,在数组中找出由三个数组成的最大乘积,并输出这个乘积

    错解:

    class Solution:
        def maximumProduct(self, nums: List[int]) -> int:
            max1=max2=max3=float('-inf')#定义正数为负无穷,保证所有的证书都比它大
            min1=min2=float('inf')#定义负数为正无穷,保证所有的负数都比它小
            for i in nums:
                if i>max1:#当i比最大的数还大
                    max3=max2#原老二变成老三
                    max2=max1#原老大变成老二
                    max1=i#该数变成老大
                elif i>max2:#当i仅仅大于老二
                    max3=max2#原老二变成老三
                    max2=i#该数变成老二
                elif i>max3:#当i仅仅大于老三
                    max3=i#该数变成老三,前者的位置不动
            for j in nums:
                if i<min1:#当i比最小的数还小
                    min2=min1#原最小的数变成了第二小
                    min1=i
                elif i<min2:#当i小于第二小的数
                    min2=i#i变成第二小
            return max(max1*max2*max3,min1*min2*max1)
    
            

    正解:

    原来错在第二个循环的j写成i了

    class Solution:
        def maximumProduct(self, nums: List[int]) -> int:
            max1=max2=max3=float('-inf')#定义正数为负无穷,保证所有的证书都比它大
            min1=min2=float('inf')#定义负数为正无穷,保证所有的负数都比它小
            for i in nums:
                if i>max1:#当i比最大的数还大
                    max3=max2#原老二变成老三
                    max2=max1#原老大变成老二
                    max1=i#该数变成老大
                elif i>max2:#当i仅仅大于老二
                    max3=max2#原老二变成老三
                    max2=i#该数变成老二
                elif i>max3:#当i仅仅大于老三
                    max3=i#该数变成老三,前者的位置不动
            for j in nums:
                if j<min1:#当i比最小的数还小
                    min2=min1#原最小的数变成了第二小
                    min1=j
                elif j<min2:#当i小于第二小的数
                    min2=j#i变成第二小
            return max(max1*max2*max3,min1*min2*max1)
  • 相关阅读:
    Oracle PL/SQL攻略
    Android数据库中查找一条数据 query方法详解
    验证视图MAC失败 Validation of ViewState MAC Failed
    长方体类
    用类的友元函数完成运算符的重载
    全国软件2. 三人年龄
    Android中实现带声音提示的Toast (自定义扩展Toast)
    js判断生效时间不得大于失效时间
    OpenGL运用辅助库创建规则几何对象
    Ubuntu13.04安装CUDA5.0
  • 原文地址:https://www.cnblogs.com/liuxiangyan/p/14443540.html
Copyright © 2020-2023  润新知