type
Post
status
Published
slug
algorithm/base
summary
算法基础
tags
算法
category
分享
password
👍 解答思路
- 确定题意和边界条件
- 输入是什么? 输出是什么?
- 具体计算过程应该什么样?
- 考虑边界情况?
- 是否有额外要求? 是否引入库函数?
- 和出题人沟通思路
- 逐个确定疑问点
- 假装经过思考
- 提出优化方案的时候,一定要分析利弊
- Coding( 注意code style)
- 测试 - 常见case 和 边界case
- 分析复杂度
- 优化,follow up question
熟悉常用算法和数据结构
• 字符串,链表,队列,堆,栈,二分搜索,递归,搜索,矩阵&图,二叉树,贪心算法,排序,回溯,动态规划
熟悉常见做题模板套路
• 双指针,滑动窗口,单调栈,中心扩散, 剪枝,二分模板
时间复杂度次序
• O(1) < O(logn) < O(n) < O(n^2) < O(n^3) <O(2^n) < O(n!)
• 时间复杂度只关心数据量非常大的情况