![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Python计算题
做测试的喵酱
不舍爱与自由。
展开
-
3. 无重复字符的最长子串
#力扣第3题题目描述:给定一个字符串s,请你找出其中不含有重复字符的最长子串的长度。思路:滑动窗口+队列+集合我们用集合+数组的属性,来构造一个不含有重复数据的队列。集合的属性:lookup = set() # 创建一个空集合while s[i] in lookup: #保证队列(集合)的数据唯一性,lookup.remove(s[left]) #如果有重复数据,干掉旧数据注意,这里remove(...原创 2021-07-29 20:11:07 · 100 阅读 · 0 评论 -
python-双指针
目录核心思想一、快慢指针二、对撞指针三、滑动窗口核心思想1.两个指针,其中一个指针遍历所有元素,另一个元素根据条件判断是否移动2.达到一定条件,将两个指针指向的元素,互换,list[i],list[j]=list[j],list[i]一、快慢指针二、对撞指针三、滑动窗口...原创 2021-07-19 11:08:24 · 772 阅读 · 1 评论 -
python二分查找
list = [1,2,4,5,7,8,10,11,13,15,17,18,19,20]n = 2start = 0stop = len(list) - 1while start<=stop: mid = (start+stop)//2 # 小于中间数 if n==list[mid]: print(mid) break elif n<list[mid]: stop=mid-1 else: .原创 2021-07-14 16:02:17 · 79 阅读 · 0 评论 -
冒泡排序
a.冒泡排序list=[2,4,8,3,1,7]for i in range(len(list)-1): for j in range(i+1,len(list)): if list[i]>list[j]: list[i],list[j]=list[j],list[i]原创 2021-04-19 10:27:51 · 75 阅读 · 0 评论 -
a,b = b ,a+b
结论:先计算=号的右边b的值,a+b的值,算好了,然后再分别赋值给a 和b就可以了。def t(): a = 1 b = 2 a, b = b, a + b print('a:', a) print('b:', b)输出结果:a: 2b: 3def t1(): a = 1 b = 2 a = b b = a + b print('a:', a) print('b:', b)输出结果:.原创 2021-03-28 16:19:20 · 515 阅读 · 0 评论 -
Python 括号问题
一、简单括号匹配判断字符串中(()((())()))括号是否正确匹配。区分括号是否匹配说一下思路:借助栈,。从空栈开始,从左到右处理 括号字符串。如果为“(”就压入栈,如果为“)”就弹出栈。栈最后为空,则字符串匹配。class Stack: def __init__(self): self.items = [] def isEmpty(self): return self.items == [] def push(self, item)原创 2021-01-17 16:31:14 · 663 阅读 · 1 评论 -
推斐波那契数列&递归&跳台阶
应用场景: 当我们碰到诸如需要求阶乘或斐波那契数列的问题时,使用普通的循环往往比较麻烦,但如果我们使用递归时,会简单许多,起到事半功倍的效果。1、递归定义程序调用自身的编程技巧称为递归( recursion)。 递归做为一种算法在程序设计语言中广泛应用。 一个过程或函数在其定义或说明中有直接或间接调用自身的一种方法,它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解,递归策略只需少量的程序就可描述出解题过程所需要的多次重复计算,大大地减少了程序的代码量。.原创 2020-12-31 18:18:45 · 140 阅读 · 0 评论 -
两数之和
给定一个整数数组 nums和一个目标值 target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。nums = [2, 7, 11, 15]target = 9for i in range(len(nums)-1): for x in range(i+1,len(nums)): if nums[i]+nums[x] == target: print(...原创 2020-12-28 22:03:50 · 72 阅读 · 0 评论 -
Python 计算器-打印各种三角形
* ** *** **** ***** for i in range(5): # 控制*的数量 for j in range(5): if i <= j: print(" ", end='') for j in range(5): if i >= j: print("*", end='') print(" ") *****...原创 2020-12-25 17:56:00 · 182 阅读 · 0 评论 -
Python 计算题-字符流中第一个不重复的字符
(4)字符流中第一个不重复的字符请实现一个函数用来找出字符流中第一个只出现一次的字符。例如,当从字符流中只读出前两个字符"go"时,第一个只出现一次的字符是"g"。当从该字符流中读出前六个字符“google"时,第一个只出现一次的字符是"l"。# -*- coding:utf-8 -*-# (4)字符流中第一个不重复的字符def fristStr(s): for i in range(len(s)): if i == 0: if s[i]原创 2020-12-25 17:18:35 · 306 阅读 · 0 评论 -
Python 计算题--扑克牌顺子【猿辅导、百度---开发】
(5)扑克牌顺子【猿辅导、百度---开发】LL今天心情特别好,因为他去买了一副扑克牌,发现里面居然有2个大王,2个小王(一副牌原本是54张^_^)...他随机从中抽出了5张牌,想测测自己的手气,看看能不能抽到顺子,如果抽到的话,他决定去买体育彩票,嘿嘿!!“红心A,黑桃3,小王,大王,方片5”,“Oh My God!”不是顺子.....LL不高兴了,他想了想,决定大\小 王可以看成任何数字,并且A看作1,J为11,Q为12,K为13。上面的5张牌就可以变成“1,2,3,4,5”(大小王分别看作2和4),原创 2020-12-25 17:16:23 · 357 阅读 · 0 评论