zoukankan      html  css  js  c++  java
  • 算法

    
    
     
    
    
    """
    输出4个6
    """
    def num():
        return [lambda x:i*x for i in range(4)]
    print([m(2) for m in num()])
    
    """
    将列表推导式[]变成(),相当于生成一个生成器,没有参数延时生效
    输出:[0, 2, 4, 6]
    """
    def num():
        return (lambda x:i*x for i in range(4))
    print([m(2) for m in num()])
    
    
    """
    在列表推导式中及时传参,i=i
    输出:[0, 2, 4, 6]
    """
    def num():
        return [lambda x,i=i:i*x for i in range(4)]
    print([m(2) for m in num()])


     1 def get_index(nums, target):
     2     """
     3     :param nums:传的参数列表
     4     :param target:目标值
     5     :return:索引值列表
     6     """
     7     index_dict={
     8 
     9     }
    10     for index,num in enumerate(nums):
    11         tem=target-num
    12         tem_index=index_dict.get(tem,'')
    13         if tem_index:
    14             print(tem_index,index)
    15         else:
    16             index_dict[num]=index
    17 
    18 if __name__ == '__main__':
    19     pp = get_index([2, 4, 5, 8, 1, 11, 4, 15, 7], 9)
    View Code
     1 class Feibonacci():
     2     def __init__(self,num):
     3         self.a=0
     4         self.b=1
     5         self.n=0
     6         self.num=num
     7     def __iter__(self):
     8         return self
     9     def __next__(self):
    10         if self.n<= self.num:
    11             f = self.b
    12             self.a, self.b =self.b,self.a+self.b
    13             self.n += 1
    14             return f
    15         else:
    16             raise StopIteration
    17 
    18 b=Feibonacci(10)
    19 
    20 # print(list(b))
    21 for i in b:
    22     print(i)
    斐波那契
     1 def uu():
     2     str='nsjadsabjkfas'
     3     b=set()
     4     for i in str:
     5         b.add(i)
     6     if len(b)==len(str):
     7         return True
     8     else:
     9         return False
    10 a=uu()
    11 print(a)
    是否存在重复字母
    1 a=100+sum([100*(0.5**i)  for i in range(0,9)])
    2  print(a)
    100米高小球掉落
    1 json_array = [{"a":1, "b":2},{"a":3, "b": 1},{"a":2, "b": 1}]
    2 y=sorted (json_array,key=lambda x: x['a'] )
    3 print(y)
    字典排序

    sort 与 sorted 区别:

    1. sort 是应用在 list 上的方法,属于列表的成员方法,sorted 可以对所有可迭代的对象进行排序操作。
    2. list 的 sort 方法返回的是对已经存在的列表进行操作,而内建函数 sorted 方法返回的是一个新的 list,而不是在原来的基础上进行的操作。
    3. sort使用方法为ls.sort(),而sorted使用方法为sorted(ls)
    1 sorted(iterable[, cmp[, key[, reverse]]])
    sorted用法

    参数说明:

    • iterable -- 可迭代对象。
    • cmp -- 比较的函数(python3中已被彻底移除),这个具有两个参数,参数的值都是从可迭代对象中取出,此函数必须遵守的规则为,大于则返回1,小于则返回-1,等于则返回0。
    • key -- 主要是用来进行比较的元素(python2.4开始提供,之前采用cmp),只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。此函数将在每个元素比较前被调用。
    • reverse -- 排序规则,reverse = True 降序 , reverse = False 升序(默认)。
     1 def bubbleSort(arr):
     2     """
     3     :param arr:需要的列表
     4 
     5     """
     6     n = len(arr)
     7 
     8     # 遍历所有数组元素
     9     for i in range(n):
    10 
    11         # Last i elements are already in place
    12         for j in range(0, n - i - 1):
    13 
    14             if arr[j] > arr[j + 1]:
    15                 arr[j], arr[j + 1] = arr[j + 1], arr[j]
    16 
    17 
    18 arr = [64, 34, 25, 12, 22, 11, 90]
    19 
    20 bubbleSort(arr)
    21 
    22 print("排序后的数组:")
    23 for i in range(len(arr)):
    24     print("%d" % arr[i])
    冒泡排序
    1 s = "Let's take LeetCode contest"
    2 b=" ".join(s.split(' ')[::-1])[::-1]
    3 print(b)
    每个单词反转
  • 相关阅读:
    Linux下命令行安装weblogic10.3.6
    11g新特性:Health Monitor Checks
    Oracle/PLSQL: ORA-06550
    DBMS_NETWORK_ACL_ADMIN
    【RDA】使用RDA(Remote Diagnostic Agent)工具对数据库进行健康检查
    ORA-39242 错误
    Yii2 中常用的增删改查操作总结
    PHP递归函数return返回null的问题
    PHP中生成随机字符串,数字+大小写字母随机组合
    使用layer.msg 时间设置不起作用
  • 原文地址:https://www.cnblogs.com/little-sailor/p/13254233.html
Copyright © 2011-2022 走看看