Re: [請益] 刷Leetcode的正確姿勢?
※ 引述《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://www.ptt.cc/bbs/Soft_Job/M.1570793396.A.AB6.html
留言