一些基本的算法题的整理(1)

整理的内容来源于小象学院的算法网络课程:https://www.bilibili.com/video/av17664182?from=search&seid=10695542251210958364

用头插法(即历遍数组,遇到一个数就把它扔到前面去。)做链表翻转的问题,时间复杂度为O(n)

这里写图片描述

链表的划分问题
这个问题比较简单,定义两个数值A和B,遇到比结点大的就放到A,比结点小的就放到B。之后再结合这两个数组。
这里写图片描述
这里写图片描述

拓扑排序问题
找到一个没有输入的点作为起点,然后删除它及它发出的边,再找一下一个没有输入的点,以此消灭所有的点。当然,路径可能有多条。
这里写图片描述
这里写图片描述

括号匹配问题
遇到左括号就存起来;遇到右括号看看栈顶是不是相应的左括号;先进来的后出去
这里写图片描述
这里写图片描述

最长括号匹配问题
这个问题稍微复杂一些。与前一个问题相比,既要考虑括号是否匹配,又要考虑现今为止最长的匹配长度是多少。在扫描字符串的过程中,此题的题眼在于对最长匹配长度的更新。
这里写图片描述
这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值