python
pengfeierzhang
这个作者很懒,什么都没留下…
展开
-
剑指offer:扑克牌顺子
题目描述LL今天心情特别好,因为他去买了一副扑克牌,发现里面居然有2个大王,2个小王(一副牌原本是54张_)…他随机从中抽出了5张牌,想测测自己的手气,看看能不能抽到顺子,如果抽到的话,他决定去买体育彩票,嘿嘿!!“红心A,黑桃3,小王,大王,方片5”,“Oh My God!”不是顺子…LL不高兴了,他想了想,决定大\小 王可以看成任何数字,并且A看作1,J为11,Q为12,K为13。上面的5张...原创 2019-12-06 22:05:31 · 53 阅读 · 0 评论 -
剑指offer:机器人的运动范围
题目叙述地上有一个m行和n列的方格。一个机器人从坐标0,0的格子开始移动,每一次只能向左,右,上,下四个方向移动一格,但是不能进入行坐标和列坐标的数位之和大于k的格子。 例如,当k为18时,机器人能够进入方格(35,37),因为3+5+3+7 = 18。但是,它不能进入方格(35,38),因为3+5+3+8 = 19。请问该机器人能够达到多少个格子?分析:要解决的问题:当机器人走到的位置...原创 2019-12-06 19:24:33 · 74 阅读 · 1 评论 -
python简单地实现快速排序
def quickSort(array): less = [] greater = [] if len(array) <= 1: return array pivot = array.pop() for i in array: if i>pivot : greater.append(i...原创 2019-11-16 23:30:58 · 87 阅读 · 0 评论 -
python中使用join将一个存有任意类型的列表转化为字符串
1.先将列表中的每一个元素使用str()转化为字符串2.使用join进行拼接print(''.join([str(item) for item in [1, 'pq', 'rs']]))原创 2019-10-06 11:51:31 · 892 阅读 · 2 评论 -
python中的深拷贝和浅拷贝
在python中关于列表等可变对象的拷贝存在深拷贝和前拷贝之分, 以列表为例列表切片实现对简单列表的拷贝:[:]如果一个列表里面包含的各个元素是不可变对象,则对列表的拷贝无关深拷贝和浅拷贝,直接使用切片进行拷贝即可。ex = [1,2,3]copyex = ex[:]print(ex is copyex)# False当列表中的子元素仍然存在 不可变对象,比如列表中嵌入列...原创 2019-09-26 09:09:24 · 78 阅读 · 0 评论 -
python中的heapq
1.堆排序的应用寻找k个数中的最小值寻找n个数中的第k大的数2.高级语言中提供封装好的堆这种结构2.1 python中: import heapqheapq内置模块位于./Anaconda3/Lib/heapq.py,提供基于堆的优先排序算法.2.2 什么是堆?堆的逻辑结构就是完全二叉树,并且二叉树中父节点的值小于等于该节点的所有子节点的值。这种实现可以使用 heap[k] &l...原创 2019-09-12 11:28:13 · 1199 阅读 · 0 评论 -
c++中的map和python中的dict()
c++map<int,int> map;cout<<map[0];output:0说明c++中访问不存在的键则会默认设置为0map<int,int> map;cout<< sizeof(map)<<endl;cout<<map[0]<<endl;int a;cout<< size...原创 2019-09-09 20:22:38 · 6001 阅读 · 0 评论 -
python3中sorted + lambda表达式进行对可迭代对象自定义排序
在python3中,sorted可以返回一个新的已经排好序的可迭代对象1. 列表排序sorted(iterable, key, reverse)lis = [1,8,2,1,0]print(sorted(lis, key = lambda x:x))print(sorted(lis, key = lambda x:x), reverse = True)默认是从小到大进行排序2....原创 2019-08-15 14:23:43 · 730 阅读 · 0 评论 -
python中二维列表,当里面的列表改变的时候,外面的列表也会改变,因此在回溯的时候,应该对里面的列表进行拷贝
Path Sum IIMediumGiven a binary tree and a sum, find all root-to-leaf paths where each path’s sum equals the given sum.Note: A leaf is a node with no children.Example:Given the below binary tre...原创 2019-08-11 11:24:52 · 407 阅读 · 0 评论 -
Python中的列表复制的副作用
result = [[0]*n ] * m#初始化一个结果矩阵resultresult[0][0] = 1本身是想只赋值初始化第一行第一列的位置元素,但是会造成每行的第一个元素都会被赋值为1解决方式:matrix = [[0 for i in range(3)] for i in range(3)]...原创 2019-06-13 22:43:54 · 128 阅读 · 0 评论 -
python列表
利用切片逆序进行遍历列表lis = [i in for range(8)]#注意第二个位置不能写-1res = lis[len(lis)-1::-1]原创 2019-03-30 17:30:45 · 67 阅读 · 0 评论