LetCode 485: 给定一个二进制数组, 计算其中最大连续 1 的个数

给定一个二进制数组, 计算其中最大连续 1 的个数

第一种方法: 将count存入一个ans的列表中,取得列表中最大值即为最大连续1的个数

    def findMaxConsecutiveOnes(nums: List[int]) -> int:
        ans = []
        count = 0
        if 1 not in nums:
            return 0
        for i in nums:
            if i == 1:
                count += 1 
                ans.append(count)
            else:
                
                count = 0
        return max(ans)
            

第二种方法: 用比较替换的方法,如果当前count比ans大,将count赋值给ans,确保ans是最大数

    def findMaxConsecutiveOnes(self, nums: List[int]) -> int:
        ans = 0
        cnt = 0
        for num in nums:
            if num == 1:
                cnt += 1
                ans = max(ans, cnt)
            else:
                cnt = 0
        return ans

上一篇:西门子Smart 485数据通讯读取和写入程序,不懂可咨询 ,modbustcp,modbus主站从站通讯


下一篇:485modbus通讯协议