interviews:6.5 万人 Star 的面试刷题指南

interviews:6.5 万人 Star 的面试刷题指南 文章目录interviews6.5 万人 Star 的面试刷题指南1、 这个仓库解决什么问题2、 数据结构部分讲了什么3、 算法部分覆盖了哪些4、 代码题解的组织方式5、 还有哪些配套资源6、 适合什么人interviews6.5 万人 Star 的面试刷题指南kdn251/interviews 在 GitHub 上已经拿到 64,990 Star 了。这个仓库干的事很纯粹把数据结构和算法的核心知识整理成一份可查阅的参考手册同时附带大量 Java 题解。对准备技术面试的人来说它是一份从理论到代码都覆盖到了的资料包。1、 这个仓库解决什么问题准备面试的人都经历过这种状态翻书看数据结构的定义刷 LeetCode 看题解两边来回跳。书上的知识和写代码之间总有一段距离。这个仓库把两者放到了一起。每种数据结构先讲清楚是什么、有哪几种类型、增删查改的时间复杂度是多少然后直接给出对应的 Java 实现代码。不用再自己去拼凑。2、 数据结构部分讲了什么覆盖了面试中出现频率最高的那些结构链表、栈、队列、二叉树、二分搜索树、Trie 树、Fenwick 树、线段树、堆、哈希表、图。每种结构的讲解格式统一先给定义再分类型说明最后列出时间复杂度。比如链表会区分单链表、双链表、循环链表三种分别说明节点指针的区别和各操作的复杂度。复杂一点的结构还配了图。Fenwick 树、线段树、哈希表这些光看文字不容易建立直觉有图就好理解很多。3、 算法部分覆盖了哪些排序算法讲了快排、归并、桶排序、基数排序。图算法部分更全DFS、BFS、拓扑排序、Dijkstra、Bellman-Ford、Floyd-Warshall、Prim、Kruskal基本上面试会考到的图算法都在这里了。每个算法都配了动态演示图能看到节点遍历和路径选择的过程。这对理解算法的执行逻辑比纯看文字有效得多。贪心算法单独列了一节用零钱找零的例子讲清楚了贪心策略的适用条件最优子结构和贪心选择性质。位运算部分也整理了常用的位操作技巧从测试第 k 位到位运算交换值都是面试中偶尔会考的冷门知识点。4、 代码题解的组织方式仓库里有 18 个目录、124 个 Java 文件按数据结构和算法类型分类存放。Array 目录下有最大子数组和、螺旋矩阵、搜索旋转排序数组这些经典题。DynamicProgramming 目录下有爬楼梯、编辑距离、正则匹配、单词拆分。HashTable 目录下有两数之和、字母异位词分组、最小覆盖子串。基本上 LeetCode 高频题该有的都有了。代码写法偏简洁没有过多的注释和优化技巧展示适合当作参考实现来看。5、 还有哪些配套资源仓库还整理了一份资源清单在线刷题平台列了 LeetCode、HackerRank、CodeForces、SPOJ 等 12 个站点。视频课程推荐了 UC Berkeley 和 MIT 的数据结构与算法公开课。面试书单包括《Cracking The Coding Interview》《Competitive Programming 3》《Introduction to Algorithms》这三本。另外还有实时刷题平台的推荐比如 Pramp 和 Interviewing.io可以跟真人模拟面试。仓库也提供了中文翻译版本方便不习惯英文阅读的人。6、 适合什么人正在准备技术面试的开发者。不管是要刷题还是补基础这个仓库都能用。数据结构的讲解适合从头学或者查漏补缺代码题解适合写完自己的实现后对照参考。这个仓库最后一次更新是 2018 年但数据结构和算法本身不会过时。基础的东西就是这样五年前和现在考的还是同一套。次更新是 2018 年但数据结构和算法本身不会过时。基础的东西就是这样五年前和现在考的还是同一套。