整理的内容来源于小象学院的算法网络课程:https://www.bilibili.com/video/av17664182?from=search&seid=10695542251210958364
用头插法(即历遍数组,遇到一个数就把它扔到前面去。)做链表翻转的问题,时间复杂度为O(n)
链表的划分问题
这个问题比较简单,定义两个数值A和B,遇到比结点大的就放到A,比结点小的就放到B。之后再结合这两个数组。
拓扑排序问题
找到一个没有输入的点作为起点,然后删除它及它发出的边,再找一下一个没有输入的点,以此消灭所有的点。当然,路径可能有多条。
括号匹配问题
遇到左括号就存起来;遇到右括号看看栈顶是不是相应的左括号;先进来的后出去
最长括号匹配问题
这个问题稍微复杂一些。与前一个问题相比,既要考虑括号是否匹配,又要考虑现今为止最长的匹配长度是多少。在扫描字符串的过程中,此题的题眼在于对最长匹配长度的更新。