![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
python
半捧银河醉
这个作者很懒,什么都没留下…
展开
-
Python sort()方法和sorted()方法
sort()函数 sort()函数用于对列表排序,如果指定参数,则使用比较函数指定的比较函数。 list.sort(cmp=None, key=None, reverse=False) 参数 cmp,可选参数,如果指定了该参数,则会使用该参数的方法进行排序。 key,用于指定用来比较的元素,指定可迭代对象中的一个元素来进行排序。 reverse,排序规则,True表示降序,默认...原创 2019-08-14 21:41:45 · 77 阅读 · 0 评论 -
不重复打印数组中相加和为给定值的所有二元组和三元组
1.题目描述 给定排序数组arr和整数k,不重复打印arr中所有相加和为k的不降序二元组 例如, arr = [-8, -4, -3, 0, 1, 2, 4, 5, 8, 9], k = 10,打印结果为: 1, 9 2, 8 解题方法 用左右两个指针不断向中间压缩的方式实现 n,k = list(map(int,input().split())) arr = list(map(i...原创 2019-08-15 15:16:59 · 225 阅读 · 0 评论 -
卡特兰数
卡特兰数是组合数学中一个常出现在各种计数问题中出现的数列,其前n项为(从0开始):1,1,2,5,14,42,132,429,1430,4862... 卡特兰数满足以下性质: 1.令h(0)=1,h(1)=1,Catalan数满足递推式。 h(n) = h(0)*h(n-1) + h(1)*h(n-2)+...+h(n-1)*h(0),(n>=2) 其它通项公式: 代码实...原创 2019-08-25 21:21:50 · 134 阅读 · 0 评论 -
由两个栈组成的队列
题目描述 用两个栈实现队列,支持队列的基本操作。 输入描述 第一行输入一个整数N,表示对队列进行的操作总数。 下面N行每行输入一个字符串S,表示操作的种类。 如果S为"add",则后面还有一个整数X表示向队列尾部加入整数X。 如果S为"poll",则表示弹出队列头部操作。 如果S为"peek",则表示询问当前队列中头部元素是多少。 输出描述 对于每一个为"peek"的操作,输出一...原创 2019-08-16 19:05:02 · 198 阅读 · 0 评论 -
未排序数组中累加和为给定值的最长子数组
1.题目描述 给定一个数组arr,该数组无序,但每个值均为正数,再给定一个正数k。求arr的所有子数组中所有元素相加和为k的最长子数组的长度 例如,arr = [1, 2, 1, 1, 1], k = 3 累加和为3的最长子数组为[1, 1, 1],所以结果返回3 [要求] 时间复杂度为O(n)O(n),空间复杂度为O(1)O(1) 输入描述 第一行两个整数N, k。N表示数组长度,...原创 2019-08-16 20:30:41 · 297 阅读 · 0 评论 -
用一个栈实现另一个栈的排序
题目描述 一个栈中元素的类型为整型,现在想将该栈从顶到底按从大到小的顺序排序,只许申请一个栈。除此之外,可以申请新的变量,但不能申请额外的数据结构。如何完成排序? 输入描述 第一行输入一个N,表示栈中元素的个数 第二行输入N个整数a_iai表示栈顶到栈底的各个元素 输出描述 输出一行表示排序后的栈中栈顶到栈底的各个元素。 N = int(input()) arr = lis...原创 2019-08-17 14:16:03 · 104 阅读 · 0 评论 -
2048游戏核心实现
核心功能实现: 代码1(https://blog.csdn.net/hebtu666/article/details/81663648) def left():#向左 for i in range(4):#遍历每一行 for j in range(3):#遍历每一行的每个元素 for k in range(j+1,4):#遍历j右边的元素 ...原创 2019-08-26 11:17:32 · 1375 阅读 · 0 评论