zoukankan      html  css  js  c++  java
  • leetcode 刷题笔记

    1、将list转化为字典

     for i in range(len(A)):
                each = dict()
                for j in A[i]:
                    if j not in each:
                        each[j] = 1
                    else:
                        each[j] += 1

    reduce() 函数会对参数序列中元素进行累积。

    函数将一个数据集合(链表,元组等)中的所有数据进行下列操作:用传给 reduce 中的函数 function(有两个参数)先对集合中的第 1、2 个元素进行操作,得到的结果再与第三个数据用 function 函数运算,最后得到一个结果。

    reduce(function, iterable[, initializer])
    • function -- 函数,有两个参数
    • iterable -- 可迭代对象
    • initializer -- 可选,初始参数
    >>>def add(x, y) :            # 两数相加
    ...     return x + y
    ... 
    >>> reduce(add, [1,2,3,4,5])   # 计算列表和:1+2+3+4+5
    15
    >>> reduce(lambda x, y: x+y, [1,2,3,4,5])  # 使用 lambda 匿名函数
    15
    A = ["bella","label","roller"]
    number = []
    for i in range(len(A)):
        each = dict()
        for j in A[i]:
            if j not in each:
                each[j] = 1
            else:
                each[j] += 1
        number.append(each)
    result = []
    from functools import reduce
    #找出每个list中存在一样keys值的值,
    #dict_keys(['b', 'e', 'l', 'a'])
    #dict_keys(['l', 'a', 'b', 'e'])
    #dict_keys(['r', 'o', 'l', 'e'])
    union = list(reduce(lambda x,y:x&y, map(dict.keys, number)))#dict.keys需对llist进行操作
    for i in union:#union  ['l', 'e']
        result.extend([i] * min([k[i] for k in number]))
    #['l', 'l', 'e']
  • 相关阅读:
    Kettle 使用入门
    git mac客户端使用提交与同步
    MAC 远程桌面链接 证书或链接无效
    mac下wifi无法连接的问题
    mysql时间段内查询
    mybatis 特殊符号及like的使用
    mac下剪切文件或文件夹
    eclipse下使用git下载和上传项目
    unbutu下搭建FTP服务
    mybatis 的if else
  • 原文地址:https://www.cnblogs.com/xxupup/p/10770981.html
Copyright © 2011-2022 走看看