- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Leetcode各种题型题 ⽬+思路+代码 (共176道题)
⽂章 ⽬录
第⼀章 :Leetcode 每 ⽇很多题
1、Leetcode-1047 删除字符串中的 有相邻重复项
题 ⽬描述 :
题 ⽬思路 :
使⽤stack的思路,先把字符串的第⼀个字母压栈,然后判断下⼀个待压栈的字母是否与stack[- 1]的字母相同,如果相同,该字母不进⼊
stack中,且stack.pop()将重复的字母剔除。如此遍历⼀遍字符串,最后返回stack中的元素即为消除重复字后的字符串。
举例 :abbaca
建⽴栈
把a压栈
b与a不相同,压栈
第⼆个b和stack栈⼝元素相同,不要第⼆个b且把栈扣的b pop掉。
第四个元素 :a,此时stack中还有⼀个元素a,相同,不要第四个元素且把stack中的a pop掉
压c,压a
返回ca即为结果
代码 :
def main(S) :
stack=[]
for i in S:
if stack and stack[-1]==i:
stack.pop()
else:
stack.append(i)
return .join(stack)
2、剑指 Offer 53 - I. 在排序数组中查找数字 I
代码实现
class Solution:
def search(self, nums: List[int], target : int) - int :
dic1=collections.defaultdict(int)
for i in nums:
dic1[i]+=1
return dic1[target] if dic1[target] else 0
3、Leetcode704:⼆分查找
题 ⽬描述
代码实现
class Solution:
def search(self, nums: List[int], target : int) - int :
left=0
right=len(nums)-1
while left=right :
mid=(left+right)//2
if nums[mid]target :
right=mid-1
elif nums[mid]target :
left=mid+1
else:
return mid
return -1
4、 Leetcode 227 :基本计算器II
题 ⽬描述 :
解题思路 :
⾸先对于计算器来说有加减乘除四种符号,对于加减的符号,运算主要看加减符号后⾯的两个数字。对于乘除符号,运算主要看乘除符号前
后的数字。解题思路是维护⼀个栈,遍历输⼊字符串,当遇到的都是数字那么把它们做累加定义为变量num,当遍历到不是数字时,空格的
话忽略。如果是计算符号,在当前时刻查看上⼀个符号,会有四种情况 :
“+” :只需把num的数字压栈即可
“-” :只需把num的相反数压栈即可
“*” :需要从栈中取出上⼀次压栈的数字并与当前num做乘法压栈。
“/” :需要把栈中上⼀次压栈的数字并与当前num做除法取整即可。
对于出现计算符号的每个时刻计算的都是它前⾯保留的num和上⼀次符号的计算。 以当前时刻计算压栈后,prev_flag定义为当前符
号,在下⼀次出现计算符号开始计算,num作为计数变量也要清零。
代码
class Solution:
def calculate(self, s: str) - int :
s+= $
stack=[]
pre_flag= +
num=0
for i in s:
if i.isdigit() :
num=num
您可能关注的文档
最近下载
- 能源分析软件:DesignBuilder二次开发_(1).DesignBuilder软件介绍与基本操作.docx VIP
- 2023年北京理工大学公共课《C语言》科目期末试卷B(有答案).docx VIP
- 2023年太原理工大学公共课《C语言》科目期末试卷B(有答案).docx VIP
- 征求意见稿 T-CFNA 6503-2022 花椒及花椒制品中麻味物质的检测方法.pdf
- 2025北京西城高二(上)期末生物(含答案).pdf VIP
- 2024-2025学年上海新版六年级上学期期末备考:任务型阅读15篇(解析版).docx VIP
- 污水处理厂课程设计.pdf VIP
- SHT103-2009 石化行业通用图 总图运输通用图集 挡土墙、护墙及护坡精品.pdf VIP
- 兰州交通大学2024-2025学年《马克思主义基本原理概论》期末考试试卷(A卷)含参考答案.docx
- 统计软件spss操作2-统计描述和图表描述.pptx VIP
原创力文档


文档评论(0)