- 编程的内功修炼
- 去国内一流互联网公司的必要条件
- 硅谷互联网公司面试更是要求当场写算法题目
- 算法和数据结构是有趣且实用的
- Array
- Stack / Queue
- PriorityQueue
- LinkedList
- Queue / Priority queue
- Stack
- Tree / Binary Search Tree
- HashTable
- Disjoint Set
- Trie
- BloomFilter
- LRU Cache
- Greedy
- Recursion/Backtrace
- Traversal
- Breadth-first/Depth-first search
- Divide and Conquer
- Dynamic ProgrammingBinary Search
- Graph
- System architecture overview
- Design+ scalability + flexibility
- Typical system design questions
- Clarification(询问题目细节、边界条件、可能的极端错误情况)
- Possible solutions(所有可能的解法都和面试官沟通一遍)
- Compare Time & Space Complexity (时间复杂度&空间复杂度)
- Optimal Solution(最优解)
- Coding (写代码)
- Test cases (测试用例)
- 《大话数据结构》
- 《算法图解》
- 《数据结构与算法分析 :C 语言描述》
- 《数据结构与算法分析:C++ 描述》
- 《数据结构与算法分析:Java 语言描述》
- 《数据结构与算法 JavaScript 描述》
- 《数据结构与算法:Python 语言描述》
- 《剑指 offer》
- 《编程珠玑》
- 《编程之美》
- 《算法导论》
- 《算法》
- 计算机程序设计艺术》
- 《算法帝国》
- 《数学之美》
- 《算法之美》
- Chunk it up(切碎知识点)
- 庖丁解牛
- 脉络连接
- Deliberate practicing(刻意练习)
- Feedback(获得反馈)
首先学习Data Structure,再专项练习Algorithm,最后LeetCode刷题。
- Data Structure:
- 理论
- 面试题实战(切题四件套)
- 模块化练习
- Algorithm:
- 复杂度分析
- 模块化可以练习
- Leetcode 刷题
- 学习资料
- LeetCode
- 相关书籍