面试总结之算法(Algorithm)
All contents are moved to haoran119/interview (github.com)
学习笔记之LeetCode - 浩然119 - 博客园 (cnblogs.com)
学习笔记之15道简单算法题 - 浩然119 - 博客园 (cnblogs.com)
【ZZ】每个程序员都应该收藏的算法复杂度速查表 - 浩然119 - 博客园 (cnblogs.com)
Book Review: Coding Interview Questions by Narasimha Karumanchi (whatpixel.com)
推荐|《算法导论》习题答案开源,配合视频更佳! (qq.com)
- CLRS Solutions (walkccc.me)
- walkccc/CLRS: 📚 Solutions to Introduction to Algorithms Third Edition (github.com)
GitHub 标星 3w+,很全面的算法和数据结构知识 (qq.com)
【实用】Github 超过 3 万 Star 的『超实用技术面试手册』 (qq.com)
- GitHub 标星 3.2w!史上最全技术面试手册! (qq.com)
- yangshun/tech-interview-handbook: 💯 Materials to help you rock your next coding interview (github.com)
算法和编程面试题精选TOP50!(附代码+解题思路+答案) (qq.com)
万字总结:如何全方位的准备数据结构和算法? (qq.com)
准备程序员面试?你需要了解这 14 种编程面试模式
这 3 个学数据结构和算法的网站,相信你也会喜欢的! (qq.com)
- 有了这些可视化工具之后,我们就可以更简单的学习算法了,这三个网站各有春秋,你可以使用 Data Structure Visualizations 来了解数据结构,使用 VisuAlgo 和 algorithm-visualizer 来查看算法的具体执行过程,并使用 algorithm-visualizer 来查看算法的具体实现代码,真是非常方便。
- Data Structure Visualization (usfca.edu)
- VisuAlgo - 数据结构和算法动态可视化 (Chinese)
- Algorithm Visualizer (algorithm-visualizer.org)
程序员必须掌握哪些算法?算法与数据结构文章详细分类与整理! (qq.com)
LeetCode 中有哪些题的解法让你拍案叫绝? (qq.com)
GitHub 标星 17 万:打破程序员“中年危机”的「编程面试大学」! (qq.com)
Backtracking
漫画:贼简单的题目,但百分之99%的人都不会 (qq.com)
LeetCode 题解 | 力扣杯 LCP 07.传递信息 (qq.com)
LeetCode 例题精讲 | 08 排列组合问题:回溯法的候选集合 (qq.com)
LeetCode 例题精讲 | 13 BFS 的使用场景:层序遍历、最短路径问题 (qq.com)
LeetCode 题解 | 138. 复制带随机指针的链表 (qq.com)
LeetCode 力扣官方题解 | 463.岛屿的周长 (qq.com)
LeetCode 力扣官方题解 | 509. 斐波那契数 (qq.com)
LeetCode 695. 岛屿的最大面积 (qq.com)
LeetCode 力扣官方题解 | 842. 将数组拆分成斐波那契序列 (qq.com)
Divide and conquer
二分算法 — 一尺之捶,日取其半,log2n世竭 (qq.com)
LeetCode 题解 | 33. 搜索旋转排序数组 (qq.com)
LeetCode 图解 | 34.在排序数组中查找元素的第一个和最后一个位置 (qq.com)
LeetCode 力扣官方题解 | 81. 搜索旋转排序数组 II (qq.com)
图解「剑指Offer」之旋转数组的最小数字 (qq.com)
剑指Offer 图解 | 寻找旋转排序数组中的最小值 (qq.com)
从 O(N) 优化到 O(logN),你的第一想法是什么? (qq.com)
LeetCode 力扣官方题解 | 468.验证 IP 地址 (qq.com)
LeetCode 力扣官方题解 | 540. 有序数组中的单一元素 (qq.com)
Dynamic Programming
最长公共子串与最长公共子序列 - 浩然119 - 博客园 (cnblogs.com)
LeetCode 例题精讲 | 15 最长公共子序列:二维动态规划的解法 (qq.com)
最长公共前缀短语 - 浩然119 - 博客园 (cnblogs.com)
什么是动态规划(Dynamic Programming)?动态规划的意义是什么? (qq.com)
(进阶版)有了四步解题法模板,再也不害怕动态规划! (qq.com)
(再进阶版)有了四步解题法模板,再也不害怕动态规划! (qq.com)
拒绝遗忘:高效的动态规划算法
大厂动态规划面试汇总,重量级干货,彻夜整理 (qq.com)
深度解析「正则表达式匹配」:从暴力解法到动态规划 (qq.com)
漫画:寻找股票买入卖出的最佳时机(动态规划) (qq.com)
LeetCode 例题精讲 | 17 动态规划如何拆分子问题,简化思路 (qq.com)
LeetCode 图解 | 70 . 爬楼梯 (qq.com)
LeetCode 题解 | 279. 完全平方数 (qq.com)
图解一道腾讯笔试算法题:「最长上升子序列」 (qq.com)
LeetCode 题解 | 338.比特位计数 (qq.com)
LeetCode 力扣官方题解 | 518. 零钱兑换 II (qq.com)
LeetCode 力扣官方题解 | 664. 奇怪的打印机 (qq.com)
LeetCode 力扣官方题解 | 1356. 根据数字二进制下 1 的数目排序 (qq.com)
Greedy
漫画:去掉一个数,如何让剩余的数乘积最大? (qq.com)
LeetCode 一题多解 | 53. 最大子数组和:五种解法完全手册 (qq.com)
LeetCode 力扣官方题解 | 781. 森林中的兔子 (qq.com)
LeetCode 力扣官方题解 | 860. 柠檬水找零 (qq.com)
LeetCode 力扣官方题解 | 861. 翻转矩阵后的得分 (qq.com)
Math
估算2^24
- 2^10 = 1024 ~ 10^3
- 2^24 ~ 2^4 * 10^3 * 10^3 ~ 16 * 10^6
移动1位数字使等式成立3013=10
- 0^3013=1
估算悉尼有多少辆Taxi
图解算法:摘取位运算的王冠「八皇后问题」! (qq.com)
LeetCode 图解 | 191.位 1 的个数 (qq.com)
LeetCode 题解 | 371.两整数之和 (qq.com)
深入 LeetCode 470 了解拒绝采样和求期望法,再挑战一道经典概率面试题 (qq.com)
使用位运算处理一道难题:获取所有钥匙的最短路径 (qq.com)
LeetCode 力扣官方题解 | 810. 黑板异或游戏 (qq.com)
Shuffling(洗牌算法)
网易游戏面试题:如何设计一个公平的洗牌算法 (qq.com)
这或许是讲解 Knuth 洗牌算法最好的文章 (qq.com)
Simulation(模拟)
LeetCode 力扣官方题解 | 13. 罗马数字转整数 (qq.com)
LeetCode 力扣官方题解 | 57.插入区间 (qq.com)
Sliding Window(滑动窗口)
Find minimum continuous subsequence tags - 浩然119 - 博客园 (cnblogs.com)
Find substring with K-1 distinct characters - 浩然119 - 博客园 (cnblogs.com)
Find substring with K distinct characters - 浩然119 - 博客园 (cnblogs.com)
An Introduction to Sliding Window Algorithms | by Jordan Moore | Level Up Coding (gitconnected.com)
Window Sliding Technique - GeeksforGeeks
从简单到复杂,一文带你搞懂滑动窗口在数组及字符串中的应用 (qq.com)
LeetCode .239 滑动窗口最大值 (qq.com)
LeetCode 题解 | 1297.子串的最大出现次数 (qq.com)
LeetCode 力扣官方题解 | 1423. 可获得的最大点数 (qq.com)
Sort and Search
面试总结之排序算法 - 浩然119 - 博客园 (cnblogs.com)
面试总结之查找算法 - 浩然119 - 博客园 (cnblogs.com)
Top K
五分钟学算法:Top K 问题的两种经典解法 (qq.com)
超详细!详解一道高频算法题:数组中的第 K 个最大元素 (qq.com)
MISC
LeetCode 图解 | 229.求众数Ⅱ,要求线性时间复杂度? (qq.com)