当前位置: 首页 > news >正文

小说网站做兼职/如何进行搜索引擎的优化

小说网站做兼职,如何进行搜索引擎的优化,做百度网上搜索引擎推广最好网站,网站开发 项目的招标文件LeetCode详解系列的总目录(持续更新中): LeetCode详解之如何一步步优化到最佳解法:前100题目录(更新中...)-CSDN博客 LeetCode详解系列的上一题链接: LeetCode详解之如何一步步优化到最佳解法…

LeetCode详解系列的总目录(持续更新中):

LeetCode详解之如何一步步优化到最佳解法:前100题目录(更新中...)-CSDN博客

LeetCode详解系列的上一题链接:

LeetCode详解之如何一步步优化到最佳解法:14. 最长公共前缀_leetcode 14-CSDN博客

目录

LeetCode详解系列的总目录(持续更新中):

LeetCode详解系列的上一题链接:

20. 有效的括号

解法1:暴力解法

解法1思路:

代码:

解法性能:

优化思路:

解法2:最终版

代码:

解法性能:


20. 有效的括号

本题题目链接:20. 有效的括号 - 力扣(LeetCode)

解法1:暴力解法

解法1思路:

从题目中,我们看出来,总共有3对括号,这种mapping关系我们可以用字典来存储,方便我们用O(1)的复杂度来查询。并且,对于每一个左括号,一方面,不一定有对应的右括号与之配对;另一方面,即使有这样的右括号,很大概率这个右括号不是字符串中的下一个字符。因此,我们需要有一个地方来存储还没有配对的括号,我们可以使用一个列表来存储这些信息。接着,我们开始遍历输入的字符串。

对于每一个字符,假如当前列表为空的话,我们需要判断这个字符对应的括号是左括号,还是右括号,因为输入的字符串有效的条件之一为“每个右括号都有一个对应的相同类型的左括号”,那么,如果当前的括号是右括号的话,我们就可以直接判断字符串不是有效的(因为列表为空,前面没有与之配对的左括号);如果当前的括号是左括号,我们就将其存储到列表中。

如果当前列表不为空的话,若当前的括号为右括号,我们需要判断列表中最后一个括号是不是和这个右括号是配对的,如果是的话,则配对成功,移除列表中最后一个括号;否则,输入的字符串不是有效的(因为当前的这个右括号没有与之配对的左括号,题目中指出字符串有效的条件之一为“左括号必须以正确的顺序闭合”)。若当前括号为左括号,则将这个括号存到列表中。

等遍历完字符串后,假如列表是非空的,说明还有没配对的括号,输入的字符串不是有效的;否则,输入的字符串是有效的。具体的代码如下所示:

代码:

class Solution:def isValid(self, s: str) -> bool:store = []mapping = {")": "(","}": "{","]": "["}for kuohao in s:if not store:if kuohao == ")" or kuohao == "}" or kuohao == "]":return Falsestore.append(kuohao)else:if kuohao in mapping.keys():if store[-1] != mapping[kuohao]:return Falseelse:store.pop()else:store.append(kuohao)if store:return Falseelse:return True

解法性能:

优化思路:

在上面的代码中,我们发现,在遍历字符串时,不论当前列表是空,还是非空,我们都是对如果当前括号是右括号的情况进行判断处理,而对当前括号是左括号的情况,则直接放进列表中。那么,我们是不是可以将操作进行合并,先处理右括号和左括号的情况。如果是右括号的话,再处理列表是空,还是非空的情况。优化后的代码如下所示:

解法2:最终版

代码:

class Solution:def isValid(self, s: str) -> bool:store = []mapping = {")": "(","}": "{","]": "["}for kuohao in s:if kuohao == ")" or kuohao == "}" or kuohao == "]":if not store:return Falseelse:if store[-1] != mapping[kuohao]:return Falseelse:store.pop()else:store.append(kuohao)if store:return Falseelse:return True

解法性能:

 

解法分析:

对比“解法2”和“解法1”的代码,我们可以发现,优化后的代码更加紧凑,逻辑更加清晰。代码紧凑,可以减少内存的消耗,因此,优化了这个指标。

 

http://www.whsansanxincailiao.cn/news/31993050.html

相关文章:

  • 做盗链电影网站怎么样/黑锋网seo
  • 如保做网站赢利/可以建网站的网络公司有哪些
  • 婚庆网站开发的意义/百度网盘登录入口
  • 使用腾讯云建设网站教程/第一站长网
  • 在线客服招聘在家工作/优化排名seo
  • 网站建设swot/百度免费发布信息网站
  • 淘宝网站制作/百度搜索引擎首页
  • 手机电商网站开发/口碑营销案例2022
  • 图书馆网站建设费用/收录好的网站
  • 职业生涯规划大赛作品/福州百度快速优化
  • 昆山高端网站建设/视频号视频下载助手app
  • 石家庄做网站电话/产品网络营销推广方案
  • 昆明做网站的旅行社/seo搜索引擎优化是什么意思
  • 安徽龙山建设有限公司网站/今日油价92汽油价格
  • 红旗渠建设集团网站/杭州百度
  • 网站建设找哪家好/路由优化大师
  • wordpress怎么做淘客网站/市场营销推广活动方案
  • 住房建设厅网站/全网营销推广怎么做
  • 免费的带货视频素材网站/百度指数与百度搜索量
  • 公司做小程序要多少钱/快手seo关键词优化
  • 网站群建设情况/宁德市中医院
  • office做的网站/免费域名注册二级域名
  • wordpress测试数据/杭州网站优化方案
  • 做视频网站要多大的主机/爱站网seo综合查询工具
  • 品牌型网站/百度收录查询工具官网
  • qq网站代码/开发软件app需要多少钱
  • 网站群建设方案/石家庄seo顾问
  • 佛山网站建设联系电话/宁波网站推广
  • 深圳注册公司需要哪些材料和流程/宜昌seo
  • 程序员做个网站要多少钱呢/友情链接平台哪个好