随笔分类 - python
摘要:collections,itertools模块
阅读全文
摘要:f-string,dir(),装饰器。
阅读全文
摘要:threading.Thread,睡眠排序法
阅读全文
摘要:*args,**kwargs
阅读全文
摘要:1、快速排序:首先要打乱序列顺序 ,以防算法陷入最坏时间复杂度。对于一串序列,首先从中选取一个数,凡是小于这个数的值就被放在左边一摞, 凡是大于这个数的值就被放在右边一摞。然后,继续对左右两摞进行快速排序。直到进行快速排序的序列长度小于 2 (即序列中只有一个值或者空值)。 import rando
阅读全文
摘要:二分查找:搜索过程从数组的中间元素开始,如果中间元素正好是要查找的元素,则搜索过程结束。如果中间元素的值小于目标值,意味着目标值在右侧,反之在左侧。 题1:给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。数组中无重复元素。 输入
阅读全文
摘要:1、给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。 算法思路:准备重置数组nums[0.....l] def removeElement(nums,val): #想象一个新数组nums[0....l],其索引从0...l。 l=0
阅读全文
摘要:1、翻转数组中的元素:s = ['l', 'e', 'e', 't', 'c', 'o', 'd', 'e'] 算法思路:定义左指针 i=0, 右指针 r = len(s)-1。交换指针对应的元素,然后同时向中间移动指针,直到指针碰撞。在指针移动的同时,交换指针指代的元素。 def reverseS
阅读全文
摘要:1、给定一个字符串,请将字符串里的字符按照出现的频率降序排列。 import collections def frequencySort(s): dic = dict(collections.Counter(s)) res = sorted(dic.items(),key = lambda item
阅读全文
摘要:1、集合:由一个或多个确定的元素所构成的整体。集合里的元素类型不一定相同,集合里的元素没有顺序。 2、数组:数组会用一些名为 索引 的数字来标识每项数据在数组中的位置。数组中的元素在内存中是连续存储的,且每个元素占用相同大小的内存。 对于数组,计算机会在内存中申请一段 连续 的空间,并且会记下索引为
阅读全文
摘要:map(), reduce(),filter(), sorted(), lambda,装饰器, zip()
阅读全文
摘要:1、输入某年某月某日,判断这一天是这一年的第几天? leap_year = [31,29,31,30,31,30,31,31,30,31,30,31]#闰年 common_year = [31,28,31,30,31,30,31,31,30,31,30,31]#平年 year = int(input
阅读全文
摘要:1、FizzBuzz:编写一个程序 打印1-100的数字。碰到3的倍数时,打印"Fizz",碰到5的倍数时,打印“Buzz”. 如果是3和5的倍数,打印"FizzBuzz",其余则打印数字。 class FizzBuzz: def __init__(self): for i in range(1,1
阅读全文
摘要:知识点: 1、栈(stack):数据先进后出。方法:is_empty(查询数据是否为空),push(添加数据),pop(移除数据), peek(返回顶部元素),size(查询数据量) 2、队列(queue):数据先进先出。方法;enqueue(添加元素)、dequeue(移除元素)、is_empty
阅读全文
摘要:self.privi=Privileges(privileges)
阅读全文

浙公网安备 33010602011771号