刷 leetcode 需要哪些基础? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
如果想在 V2EX 获得更好的推广效果,欢迎了解 PRO 会员机制:
pro/about
hakunamatata11

刷 leetcode 需要哪些基础?

  •  
  •   hakunamatata11 2020 年 6 月 19 日 2529 次点击
    这是一个创建于 2136 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我见过完全 0 基础、大龄转码,刷题上千然后进谷歌的……

    姑且称他为老 A 吧。这里 0 基础指的是没学过编程语言,没学过数据结构和算法,一上来就直接做题那种。

    第一道题 two sum,老 A 显然是不会做的。他的方法就是看答案,背答案,然后默出来,就这样还是错了很多次。

    然而就是这样低的起点,老 A 把 LC 前 300 道题刷了至少 3 遍,累计刷题数超过 1000 道,最后靠刷题上岸了谷歌。

    关于老 A 的求职过程和刷题经验,可以来看看他自己的分享:

    谷歌在职工程师自述压箱底的算法经验

    我说老 A 的故事,并不是鼓励大家从 0 开始刷题,毕竟老 A 自己也走了很多弯路,踩了无数坑。

    如果能早点掌握正确的方法,老 A 也就不用刷 1000 道题了。不过老 A 的刷题经验和面试做题方法确实有独到之处。

    在 Leetcode/LintCode 开始刷题,首先最好能具备一定的基础,包括:

    语言基础

    用于刷题的编程语言有很多,算法是通用的,不受限于语言,主流的 Java 或者 Python 都可以。

    Java 的优点是用的公司多,一般面试官没有不会 Java 的; Python 优势在于语法简单,coding 能节省很多时间。

    算法部分

    二分搜索 Binary Search 分治 Divide Conquer 宽度优先搜索 Breadth First Search 深度优先搜索 Depth First Search 回溯法 Backtracking 双指针 Two Pointers 动态规划 Dynamic Programming 扫描线 Scan-line algorithm 快排 Quick Sort 

    数据结构部分

    栈 Stack 队列 Queue 链表 Linked List 数组 Array 哈希表 Hash Table 二叉树 Binary Tree 堆 Heap 并查集 Union Find 字典树 Trie 

    如果是应对求职面试,那么可以按照下面的面试高频知识点来刷。

    九章算法班 2020 版》免费试听 获取面试 coding style 指南

    为了应对最新疫情下的面试形式,令狐老师已经爆肝熬夜 1 个月,扩充原来 9 节课至 40+课时

    内容亮点:

    • 课程覆盖 90%国内外一线大厂算法面试高频考点
    • 2020 夏秋招最新大厂面试算法题 80+实战讲解
    • 规范编程细节,实质性提升 Coding 能力避免面试“隐形坑”
    • 课程体系完美匹配大厂面试考点,算法面试从容应对

    如何报名: 戳链接立即免费报名试听:https://www.jiuzhang.com/course/71/?utm_source=sc-v2ex-fks立即报名免费试听

    对算法题来说有两大法宝,“拿到题选什么算法”和“如何实现这个算法”,后者会更容易一些,所以可以先从实现算法开始练起,LintCode 可以筛选对应知识点的分类训练。

    当然,针对面试算法,也有一些书:

    《剑指 Offer 》:几乎包含所有常见的、经典的面试题,是应对面试的必读书籍

    《编程之美》:适合准备面试 FLAG 大厂时候用来刷题

    ps:配合 lintcode 食用效果更佳

    image

    最后,关于算法和数据结构,再推荐一些书。

    1.入门系列:

    《算法图解》:“像小说一样有趣的算法入门书”,主打“图解”,通俗易懂

    《大话数据结构》:把理论讲得有趣不枯燥;每个数据结构和算法,作者都结合了生活中的例子,能让你有非常直观的感受。

    2.教科书系列:

    《数据结构与算法分析》:很多大学都拿它当作教材,非常系统、全面、严谨,适合掌握了至少一门编程语言的同学。

    作者也很贴心,这本书有三种语言的版本:《数据结构与算法分析 : C 语言描述》《数据结构与算法分析 : C++ 描述》《数据结构与算法分析 : Java 语言描述》。

    3.进阶之旅:

    《算法导论》:有了一定基础之后,就可以开始啃这本大部头了。

    5.扩展阅读:

    《算法之美》:算法科普,从生活中的各种问题说起:租房、谈恋爱、老虎机、拍电影、面试、买彩票、各种排序、找停车位、寻找新药、临床试验、奥巴马拉赞助、预估电影票房等等,非常生活化,可以作为补充阅读。

    《算法帝国》:同样是科普类书籍,并无涉及算法的原理与实现细节,也可以作为补充阅读。

    6.殿堂级

    《计算机程序设计艺术》:包含很多卷,深度、广度、系统性、全面性是其他所有数据结构和算法书籍都所无法相比。可以当做一种挑战~

    目前尚无回复
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1342 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 40ms UTC 17:15 PVG 01:15 LAX 10:15 JFK 13:15
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86