作者pig2014 (Rocking Man)
看板Soft_Job
标题Re: [请益] 刷Leetcode的正确姿势?
时间Fri Oct 11 19:29:54 2019
※ 引述《g001613001 (阿月)》之铭言:
: 最近因为想面的工作,有要求要先刷leetcode
: 刷完才建议过去面试。
: 所以开始接触leetcode。
: 我目前是从简单难度开始刷,但是好像刷的姿势不对?
: 不过还不确定要怎麽解问题才是正确的作法。
: 原本我以为是写出来的code,可以通过网站验证,就好了。
: 但是问了前辈,他是说我目前解题方向有误
: 不可能题目要求你做阵列排序,你就直接call array.sort()
: 不能直接用现成的函式,而是要自己实作sort的函式出来
: 这样才有意义
: 不知道各位前辈在解题时或者面试考试时,也是都完全不用函式库的东西
: 而是自己实作题目要求的函式出来的吗?
: 或者请问有什麽正确刷题的姿势呢?
: 先谢谢各位前辈分享经验
干
刷了三百多题
应该有资格出来嘴一下
easy请找有意义的
不然一律刷medium
阿你说怎样算有意义的easy?
其实你刷medium碰壁
再看一下那题的similar questions
如果里面有easy
那题对你来说就是有意义的easy了
阿干你会想说
那不是还是要先刷medium?
是
只刷medium就对了
只刷easy你还是快转行吧
阿hard是三小?
通常就是把2-3个medium的技巧结合
就是hard了
不过有时脑子要转几圈
所以解hard真的是脑袋反应问题了
阿不过有时DP比较机掰
所以就是光一个机掰DP策略
就能构成一题hard
例如KMP或是Levenshtein
我解这种题目通常70%都是改用
自己改良式的hash
mem一样
speed稍差一点点
但至少解法比较符合常人的逻辑
如果你真的这麽屌
能像我搞出这种解法
等到pass後
你真的去看各个分布内的解答
你会发现没有你这种解法
大家解法机会都千篇一律
这时你就算是脱俗了
由此也能推论
其实大部分的人都是看完解答才去解
阿另外25%解出DP hard的方式
基本就是跟正解一模一样
不要问我怎麽想到的
就是智商够然後刷得多
5%的DP hard就真的想三五天
想不出来直接看解答
背起来
除了DP类型
其他类型的hard
基本上花个半天乱解都能pass
所以DP真的是凡人码农的梦魇
如果题目要求你
实现Data structures或algorithms
那一律不能用该项目的standard library
例如sort、trie、hash、blablabla...
如果不是这类题目
就能使用stl
不然题目问DP
你在那边实现merge sort
重造轮子
智障喔
至於推广
至少让自己解法能pass
然後再参考所有最佳复杂度解
以及与最佳解差O(logN)的解
通通记起来
不要怀疑
会有帮助
然後干
最後说说用啥语言刷
我认为只有C++以及Java可
py只有真‧RD可用
因为py真的太鸟
deque还要import
set与map(dict)居然是hash
list.pop(0)居然是O(N)
for速度比while微快
还有一堆垃圾潜规则
马的新手用这种语言刷
你DS会清晰我输你
最後
台湾软体薪水真的太垃圾
跪求FAAGM来台湾多开缺
人又奴
薪水又低
又不会暴动
也不会动不动伤害民族情感
跪求996来台湾多开缺
阿不是中国的一省
连个branch都没有成何体统
好了干
大家认真刷起来
半导体业倒了以後
才不会变菲律宾
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 111.251.194.98 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Soft_Job/M.1570793396.A.AB6.html
1F:推 aria0520: 用c++ +110/11 19:31
2F:→ aria0520: 看一堆python在那边一行解实作题然後炫耀 就觉得头好痛10/11 19:32
3F:推 LinuxKernel: 台湾这种薪水 还要刷这麽累的话 想起来挺可悲的XD10/11 19:34
4F:→ hsnuyi: LC就是要配着大二修DS跟Algo时刷 修完大概也刷了不少了10/11 20:05
5F:推 brovet: easy可以拿来练信心 科科10/11 20:13
6F:→ hsnuyi: 不过说实在的 这系列文之前有个EE书卷默默推说hard画画图10/11 20:15
7F:→ hsnuyi: 几分钟就可解 这人是真的强 但不知为啥面G一直上不了 所以10/11 20:15
8F:→ hsnuyi: 刷LC够了就好 之後就该补别的了 有时不是专业问题10/11 20:15
9F:推 yamakazi: 优文给推10/11 20:21
10F:推 maxqq: 认真推一个10/11 20:25
11F:推 jass970991: hard有些是真的不难,有些真的难到靠北10/11 20:27
12F:推 aria0520: 我是觉得hard常常比medium简单耶10/11 20:33
13F:→ aria0520: 如果有绕到题目正确的思路上就很简单10/11 20:34
14F:→ aria0520: medium比较像扎实的难10/11 20:34
15F:推 qpalwosk: 感谢分享10/11 20:51
16F:推 SFMAndroid: 推实用10/11 21:28
17F:推 dddingnan: 推实用10/11 21:59
18F:推 GGFACE: 我觉得hard常常比easy简单夜10/11 22:02
19F:推 alan23273850: 优文给推 文笔好幽默10/11 22:31
20F:推 ghostreporty: python精通了 刷LC会变有效率多了10/11 22:32
21F:→ clamperni: XD10/11 22:54
22F:推 benben994: 刷到爆气喔XDD 10/11 22:54
23F:推 kkbbs: 其实可以偶尔周末来比个赛10/11 22:59
24F:推 ekids1234: 笑死 推10/11 23:07
25F:推 senjor: 个人觉得程式写到後面难不难的差别是要花多久写,不是解不10/11 23:07
26F:→ senjor: 解得出来。10/11 23:08
27F:推 g5637128: 推XD10/11 23:21
28F:推 aria0520: 前阵子比较闲 每周末都有比个赛 不错玩10/11 23:24
29F:推 JK520nsk: 推推10/11 23:28
30F:推 yyhsiu: 有绕到正确思路上是哪题难了啦…什麽屁话10/11 23:29
31F:推 pkro12345: 很怒喔10/12 00:51
32F:推 G888888: 有一次把hard解完 让我怀疑人生10/12 00:55
33F:推 asadman1523: 推10/12 01:09
34F:→ invidia: 感谢分享 原po的文章都很猛10/12 01:18
35F:推 f422661: 推10/12 01:32
36F:→ aria0520: 不是屁话 只是你理解能力不够 ㄏㄏ10/12 01:45
37F:→ aria0520: 这样举例 hard常常是卡在找不对思路 只要找对了实作10/12 01:46
38F:→ aria0520: 往往很容易 medium则是实作通常会有一定复杂度10/12 01:47
39F:→ aria0520: 也就是花在找思路 跟实作的力气都是中等10/12 01:47
40F:→ javatea: 只会刷题的工程师 最後还不是奴工 = =a 台湾可以做得更好10/12 04:10
41F:推 j1988922: 推10/12 05:02
42F:→ y956403: 推荐像我一样的菜鸡可以去打周赛 一开始刷easy觉得难 但10/12 05:08
43F:→ y956403: 是开始玩周赛後基本easy都十分钟最多就解掉 medium也会开10/12 05:08
44F:→ y956403: 始有办法解 会比较有成就感 10/12 05:08
45F:推 lion741205: 简单来说 想把DS学好 不适合用py; 但同样的java很冗10/12 08:23
46F:→ lion741205: 不适合学algorithm10/12 08:23
47F:→ lemon651: java的ArrayList remove(0)不是也是O(n)吗?10/12 08:28
干
这不回真的不行
所以人家很严谨的跟你说了
它是“Array”List
List interface并没有规定复杂度
阿如果不确定
ArrayList跟LinkedList的差异
其实可以多念点书
文学类型的那种
48F:推 phe6689: 只刷easy真的是小学生的level10/12 10:17
49F:推 strlen: 刷这个台湾95%的工作都用不到的东西XDDD10/12 10:23
50F:推 gocreating: u质文10/12 10:23
51F:推 gmoz: u质XD10/12 10:50
52F:推 aria0520: 刷这个很好玩啊 我就是当休闲娱乐 兼练手感10/12 11:11
53F:推 qazxws: 台湾只有g跟m会考leetcode 刷起来cp值偏低10/12 11:52
54F:推 aria0520: 不只啦 群晖阿 趋势阿 mixerbox 还有各式新创都很爱考10/12 11:54
※ 编辑: pig2014 (111.251.194.58 台湾), 10/12/2019 12:01:09
55F:推 new122851: 面试考五题 全部空白也不会怎样 讲求的是谈吐 处理事情10/12 12:32
56F:→ new122851: 的方式 架构的理解 分析spec10/12 12:32
57F:→ x000032001: 不少公司会先丢codility线上测验吧 跟leetcode差不多10/12 13:40
58F:→ JingJing00: 用rust跟kotlin刷 顺便学新语言10/12 15:34
59F:推 NTUCS5566: 考五题都空白的确不会怎样啊 一定还有下一间可以面XDD10/12 17:13
60F:推 lemon651: 受教受教 如果是要讨论implementation的话LinkedList为10/12 17:44
61F:→ lemon651: 什麽不是跟deque比呢?还有Java的LinkedList也要import10/12 17:44
62F:→ lemon651: 为什麽deque要import就不行呢?不好意思 刚写程式几个10/12 17:44
63F:→ lemon651: 月不太熟悉10/12 17:44
List又不具random-access特性
跟deque比根本是蜘蛛比昆虫
不能长的像功能像就瞎比
重点不是需不需要import
而是一致性问题
同样是DS
要就通通import
要就通通primitive
64F:推 wheels: py list 不就是 dynamic arrays 吗?这样 pop(0) 不是 n10/12 19:50
65F:→ wheels: 要是啥?10/12 19:50
你生下来时
就知道py list = dynamic arr是吗?
那为啥不取名叫arr或darr
那我想用linkedlist实现queue怎麽办
你生下来时
就知道要另外import是吗?
我已经说了
py问题就是太多潜规则
只适合观念清晰的人
你自己懂潜规则
不代表
潜规则对新手就是理所当然的
66F:推 DLHZ: 不错XDD10/12 20:03
67F:推 Mtcat: 1110/12 22:36
68F:推 dreamnook: 这篇意外受用www 推一个10/13 10:35
69F:→ ikai99: 花了钱买premium, 结果还没刷完 10/13 10:56
70F:→ ikai99: 另外一家的offer已经拿到了,就没动力刷了 10/13 10:57
※ 编辑: pig2014 (111.251.194.58 台湾), 10/13/2019 11:27:43
71F:推 iamOsaka: 推原PO UCB跟普林斯顿的DS跟演算法就用JAVA上 有问题吗? 10/13 16:40
72F:推 shiauji: www 10/13 18:26
73F:推 wheels: 我生下来时是不知道啦,但我第一次看 tutorial 时就知道 10/13 18:59
74F:→ wheels: 了,这种事本来第一次看就会知道了吧 = = 10/13 18:59
75F:推 y956403: 楼上真厉害! 10/13 22:39
76F:推 senjor: 楼楼上真厉害! 10/14 00:45
77F:→ lyuping: 感谢分享 10/14 02:18
78F:→ lyuping: 刷题夯阿,反正考试都上网找题的... 10/14 02:22
79F:→ lyuping: 真心觉得面试官也未必知道他们在考啥吧 10/14 02:23
80F:推 internetms52: 推 10/14 08:35
81F:推 howar31: 这篇不拜一下不行 10/14 10:44
82F:→ davidpanda: 其实刷easy就够解决大部分的公司了... 10/14 11:48
83F:→ davidpanda: 台湾真的问到medium/hard的公司没那麽多 10/14 11:49
84F:→ davidpanda: 通常是FLAG等级才比较敢问medium/hard 10/14 11:51
85F:推 usoko: 推 10/14 12:53
86F:推 jackyT: Leetcode的DP会有那种ACM很不舒服的三维压缩到一维的DP吗 10/16 01:15
87F:推 siriusu: 推 10/18 23:10
88F:→ siriusu: 但我还是觉得 java 最常用的 list 就是 arraylist 最常 10/18 23:11
89F:→ siriusu: 用的 map/set 就是 hash 所以 java 出身的人也会觉得 py 10/18 23:11
90F:→ siriusu: thon 的选择没那麽不合理啊 10/18 23:11
91F:→ siriusu: fang 都不一定会问到 medium 呢 问 easy 的也所在多有 10/18 23:14
92F:→ siriusu: 但我觉得这篇建议的做法才是有效率的啦 10/18 23:14
93F:嘘 ruthertw: 想要等到半导体业倒?你等到海枯石烂吧! 10/19 17:25
94F:推 ThisRay: 推 10/21 20:11
95F:嘘 Swartz: 偏见太多, 不懂python在那边装懂 11/07 15:58
96F:推 aacs0130: 推,不过一开始可以刷easy建立信心,如果algo, ds忘很多 11/12 00:31