485. 最大连续 1 的个数

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

示例 1:

输入:nums = [1,1,0,1,1,1]
输出:3
解释:开头的两位和最后的三位都是连续 1 ,所以最大连续 1 的个数是 3.

示例 2:

输入:nums = [1,0,1,1,0,1]
输出:2

题解:
1.将nums列表中的每一项转换为字符串
2.将字符串中的每一项按0进行划分
3.将划分后的列表中的每一项计算其长度,返回最大长度值。

代码:

class Solution:
    def findMaxConsecutiveOnes(self, nums: List[int]) -> int:
        str1="".join(map(lambda x:str(x),nums))
        list1=str1.split('0')
        return max(map(lambda x:len(x),list1))

知识点:

- python中的map函数

1.定义:map()是 Python 内置的高阶函数,它接收一个函数 f 和一个 list,并通过把函数 f 依次作用在 list 的每个元素上,得到一个新的 list 并返回。
2.作用:map函数例子:我们有一个元组列表[(‘a’,1),(‘b’,2),(‘c’,3),(‘d’,4)],我想在想把里边每个元组的第一项,即字母项提取出来构成一个新的列表。

vartuple = [('a',1),('b',2),('c',3),('d',4)]
list(map(lambda x:x[0],vartuple))
['a', 'b', 'c', 'd']

3.格式:map(function,list)
4.举例:

def f(x):
    return x*x
print(list(map(f, [1, 2, 3, 4, 5, 6, 7, 8, 9])))   # Python中map无法直接显示,需要加list

- python中的lambda函数

1.定义:lambda函数是Python的内置函数,其功能主要是实现匿名函数的目的。匿名函数的优点就是简洁、轻量化。匿名函数无需起名,用完即可被回收,节约资源。
2.作用:对于一些比较抽象且只调用一两次的函数,使用lambda可以省略函数定义的步骤,减少代码量,使用代码整体更加精简。
3.格式:
(单参数)lambda x:x*2;
(多参数)lambda x,y : x+y
4.举例:

a = lambda x:x+1
a(5)
6

通常可以将map函数和lambda函数结合起来使用。

- 字符串分割中的split函数

1.定义:Python中split是一个内置函数,用来对字符串进行分割,分割后的字符串以列表形式返回。
2.语法:该函数的语法是“str.split(str=“”,num=string.count(str))”。
3.split()中如果没有参数,函数默认以空格,tab空格符,回车符等作为分割条件;
split(“/”)中有参数时,会以参数作为分割条件,把字符串进行分割,得到的每个分割段作为列表的元素返回。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值