光速写个总结!磨磨蹭蹭的
最近在拿起以前学习的算法东西,准备面试的刷题。写一下最近学习碰到的题目,这是一个总结link,往后如果还刷了什么题就在这里添加(对应Leetcode的题目)
目标:根据下面大纲分别写算法笔记,每一类至少5条题!(今天先根据之前写的题写个大概)
数据结构:(basic)
链表:
翻转链表
链表中环的入口结点
找两链表的公共结点
栈:
单调栈的理解
队列
树:
二叉树的直径
图:BFS与DFS遍历
Hash表:
两数之和
排序:
快速排序
归并排序
查找:
二分查找:用于有序数组
二维矩阵的搜索
平方根
搜索旋转排序数组
递归:
返回数组全排列
翻转链表
滑动窗口:
无重复最长字符串
斐波那契数列
动态规划:暴力解法是枚举所有可能,而且计算的过程有重复的过程!可以考虑用动态规划思考
最长公共子序列问题※非常经典!可以延伸很多题目
两字符串最小ASCII删除和
柱状图最大矩形(+单调栈)
杨辉三角
连续子数组的最大和
其他数组运算与处理:(指针的灵活应用)
合并区间
矩阵旋转
无序数组寻找左边比他都小、右边比他都大的值
------------
10.8
树的先后序遍历 非递归
0-1背包问题