Re: [請益] 碼農的職捱方向請益

看板 Tech_Job
作者 yamakazi (大安吳彥祖)
時間 2023-01-02 14:23:00
留言 136則留言 (13推 4噓 119→)

用C刷題沒問題 linked list相關問題原本題目就有給struct ,主要是pointer跟STL無關可以直接寫 DP,BFS,DFS的問題也用不到STL,用C寫完全沒問題 tree的問題是linked list的延伸所以沒問題 字串問題也不大,知道處理\n就好 唯一比較麻煩的是map C++有STL 但C也有glibc Linux header也有struct rb_tree可用 不用重造輪子 只要知道怎麼include header,怎麼包庫進來就好 不知道怎麼用查一下API文件就好 結論就是用C寫leetcode完全沒問題 ----- Sent from JPTT on my iPhone --

※ 批踢踢實業坊(ptt.cc), 來自: 61.230.202.247 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Tech_Job/M.1672640584.A.CCA.html

ejnfu : 放著C++ STL不用,要用C寫我也是醉了... 01/02 15:06

loadingN : 對啦 有glibc 但如果後面遇到直接開個gdoc給你寫 01/02 15:06

loadingN : 還是要自己刻... 01/02 15:07

yamakazi : 以經典題two sum為例,用hash map建table根本不用重 01/02 15:27

yamakazi : 新造輪子,他就是個table只是比較佔空間 01/02 15:27

yamakazi : 連刻都不用刻 01/02 15:28

yamakazi : 叫hash也不太對,因為根本用不到hash值,該叫lookup 01/02 15:31

yamakazi : table,用key當index,作為array中第幾個元素值, 01/02 15:31

yamakazi : 查找時間一樣是O(1) 01/02 15:31

dildoe : 那是讓你測驗用的吧。像FW好像還是用c比較多,C++ 01/02 16:27

dildoe : 光版本要統一就很累人XD 01/02 16:27

labbat : glibc也是linux os才有,跨平台windows和os/2怎麼辦 01/02 17:58

j0958322080 : fw 不用 c++ 是因為 tool chain 少又貴吧 01/02 18:21

j0958322080 : 然後我也用 C 刷題,很容易贏過其他人,爽 01/02 18:22

yamakazi : 沒有glibc 用陣列就好了 01/02 18:24

jfcherng : map 的話,leetcode 有 uthash 可以用 01/02 18:57

peter98 : 老實說 完全不知道你在堅持甚麼 glibc根本不是能 01/02 20:42

peter98 : 用的 這問題比C++版本問題還大 priority queue勒 01/02 20:43

peter98 : 考LRU cache那題時你等著哭死 另外 真的用c去寫 01/02 20:45

peter98 : 出來 也沒有人會appreciate... 01/02 20:45

peter98 : p.s. PQ跟LRU cache是兩個例子 兩者之間無關 01/02 20:46

wulouise : 說真的要比library 那都用python寫最懶(跑) 01/02 21:05

yamakazi : LRU 就是map和linked list是要哭什麼? 01/02 21:32

yamakazi : linked list又不是stl,map就用lookup table完全可 01/02 21:33

yamakazi : 以取代 01/02 21:33

yamakazi : https://youtu.be/0VgqZTtkINY 01/02 21:36

yamakazi : 上面就是用C寫LRU,根本不用重刻用linked list就好 01/02 21:37

yamakazi : ,是要哭什麼? 01/02 21:37

yamakazi : 你的論點大概就是stl 有priority queue可以用,但li 01/02 21:39

yamakazi : nked list斷開連結後放到頭部一樣可以辦到 01/02 21:39

yamakazi : 應該說PQ本質就是double linked list,斷開連接移到 01/02 22:11

yamakazi : 頭部這個動作是基本功,不是重刻輪子 01/02 22:11

peter98 : 笑死了 用C++寫LRU cache幾行能搞定的事情 01/02 22:13

peter98 : 你用C寫這麼多還覺得自己好棒棒 笑鼠 01/02 22:13

peter98 : 笑死人了 誰不知道PQ就是doubly linked list? 問題 01/02 22:14

peter98 : 是你用C去寫一個pq.top() pq.pop() 就是用手刻阿 01/02 22:14

peter98 : 笑死 都刻完了還說不是刻 但是跟刻有87像是吧 01/02 22:15

peter98 : 這麼會寫資料結構寫完還好棒棒 你怎麼不回大二寫 01/02 22:16

peter98 : 資結作業去電爆剛滿20歲的小屁孩? 01/02 22:16

yamakazi : 被指正就大崩潰喔,事實證明不用手刻也能寫LRU 01/02 22:24

yamakazi : 我只是說了事實。你自己去看網路關於這題的討論吧, 01/02 22:25

yamakazi : 在這邊崩潰不會顯得比較專業 01/02 22:25

yamakazi : pq.top()就是回傳頭部 01/02 22:28

yamakazi : pq.pop()就是把頭部斷掉,再用map找出最大值斷開連 01/02 22:29

yamakazi : 接接到頭部,這樣叫重刻我也是醉了 01/02 22:29

yamakazi : 我也是寫C++的,LRU就算用到PQ也沒有像你說的幾行就 01/02 22:33

yamakazi : 寫完 01/02 22:33

yamakazi : https://i.imgur.com/MmAn4Yk.jpg 01/02 22:33

j0958322080 : 自己刻太超過了啦,現在都去 google 然後複製貼上 01/02 22:34

j0958322080 : 即便你用 c++ 寫 LRU Cache 那些扣也不可能完全自幹 01/02 22:34

yamakazi : C++大概是65行,我這邊找到一個用C寫但是有用uthash 01/02 22:46

yamakazi : 的只有50行 01/02 22:46

yamakazi : https://i.imgur.com/pVb4Ho4.jpg 01/02 22:46

yamakazi : 不過行數不是重點,我刷題和工作都是用C++,重點結 01/02 22:54

yamakazi : 論是用C刷leetcode完全沒問題不用重刻輪子 01/02 22:54

peter98 : 喔 人家都已經上太空 你還在研究怎麼殺豬公 01/02 23:04

yamakazi : 說C沒辦法刷題要重刻輪子基本上就是先入為主的刻板 01/02 23:04

yamakazi : 印象 01/02 23:04

peter98 : 殺完豬公覺得自己的刀法真不錯 但其他人都在太空了 01/02 23:04

peter98 : 看不見 就是這種港覺 嘻嘻 01/02 23:05

yamakazi : 殺豬公?50行叫殺豬公喔?啊不是講要重刻輪子?現在 01/02 23:05

yamakazi : 告訴你不用重刻輪子了嘻嘻 01/02 23:05

yamakazi : 上太空和殺豬公的根據是什麼?我引經據典證明給你看 01/02 23:07

yamakazi : 不用刻輪子了,沒根據隨便講不會讓你顯得比較專業 01/02 23:07

yamakazi : C的運行效率叫殺豬公的話,我不知道其他語言的運行 01/02 23:07

yamakazi : 效率叫什麼? 01/02 23:07

peter98 : 忘了噓 補一下 01/02 23:08

yamakazi : 而且C是嵌入式最常用的語言,要說上太空的話,C不知 01/02 23:16

yamakazi : 道多少衛星和太空梭電腦在用勒 01/02 23:16

j0958322080 : 那些應該是 fortran 01/02 23:18

yamakazi : 韌體,嵌入式,以及整個Linux kernel都是用C寫的, 01/02 23:18

yamakazi : 要說上太空,C肯定早就上太空了嘻嘻 01/02 23:18

SkyReaching : Peter你不要被搓破就開始顧左右言他,這個討論叫做 01/03 01:47

SkyReaching : 不是不能用C寫,別人都貼出來怎麼寫了你還一直崩潰 01/03 01:47

SkyReaching : 也是奇葩… 01/03 01:47

SkyReaching : 沒有人說C寫效率一定比C++高吧,先把討論的主題搞清 01/03 01:48

SkyReaching : 楚 01/03 01:48

ejnfu : 純準備面試刷題的話,我看不出來用C的好處在哪... 01/03 02:38

ejnfu : python/Java/C++一行的operation,你C就算使用libra 01/03 02:38

ejnfu : ry不完全重刻,也是自己要多一些額外操作。結果還是 01/03 02:38

ejnfu : 一樣,刷題效率就是比較差 01/03 02:38

ejnfu : 除非你是想鍛鍊你的C語言,那倒是不錯的練習。 01/03 02:40

peter98 : 噗哧耶 你本文在講刷題 結果被打臉之後開始講嵌入 01/03 03:03

peter98 : 式 你是在Xilinx上面刷題逆? 連比效率時要比bench 01/03 03:04

peter98 : mark都不懂 你計組前兩章白念了膩? 我發現你不只 01/03 03:04

peter98 : 殺豬公 而且還會覽趴(C)比雞腿(效率) 01/03 03:05

peter98 : 好久沒見過像你這樣噗哧的言論了 也算是不容易 01/03 03:05

peter98 : 照你的說法 C真的是爛透了 要比效率就要寫machine 01/03 03:05

peter98 : language阿 講到效率連組語都看不到機器語言的車尾 01/03 03:06

peter98 : 燈勒 你所探討的"效率"沒屁用 機器語言效率好但是 01/03 03:07

peter98 : 不可能拿來發展中大型程式 就跟你拿C寫 30分鐘內 01/03 03:07

peter98 : 刷不出來 你還管效率? 你連code都沒有 噗哧 01/03 03:07

peter98 : 就跟你說寫C要手刻 結果你舉一堆例子還是手刻 01/03 03:09

peter98 : 不然就是拿plaform-specific的東西在那邊搖 01/03 03:09

yamakazi : 被指正就乖乖承認錯誤就好,你說造輪子我也證明給你 01/03 07:50

yamakazi : 看不用造輪子了,東拉西扯不會讓你顯得比較專業 01/03 07:50

yamakazi : 事實證明就是用C刷題本來就沒問題,被打臉後大崩潰 01/03 07:51

yamakazi : 。 01/03 07:51

yamakazi : 不過你再怎麼崩潰嗆我去電大二,也不會改變你的觀念 01/03 07:54

yamakazi : 就是錯誤的這個事實,事實就是不用造輪子,光以行數 01/03 07:54

yamakazi : 而言C++用PQ跟C根本差不多 01/03 07:54

yamakazi : 我沒說C刷題有特別好處,我只說用C刷題沒問題不用重 01/03 07:56

yamakazi : 複造輪子 01/03 07:56

dildoe : 那年代東西stdlib會有完整的資料結構才神奇。移植 01/03 08:15

dildoe : 性爆表,換句話說也有可能是東西都要自己來。可見f 01/03 08:15

dildoe : w還蠻無聊的,連螺絲都有可能要自己要造,造的輪子 01/03 08:15

dildoe : 少,改東西還要上面輪子沒感覺。這po大概面過很多f 01/03 08:15

dildoe : w?!XD 01/03 08:15

yamakazi : 我的論點不是「用C刷很有效率,叫你改用C」而是「用 01/03 08:21

yamakazi : C刷不用重造輪子」 01/03 08:21

yamakazi : 其實你的論點不就是C++可以用PQ,我已經證明給你看 01/03 08:36

yamakazi : 不用PQ也能刷題了,但如果你真的很想用PQ,C也有lib 01/03 08:37

yamakazi : 可以用PQ,詳情自己上網查 01/03 08:37

chunfo : fw也不錯啊 比多數web仔高薪 01/03 11:04

dildoe : 但那是fw變成平台跟輪子的形狀換來的啊 硬體平台跟 01/03 12:41

dildoe : 輪子玩到風生水起 分得到績效才有用啊XD 01/03 12:41

BigCockman : 語言根本就不是重點 會寫的用pseudo code 也沒差 01/03 19:12

as30385438 : web仔三年經驗拿個150不錯了吧,當然跟豬屎屋沒法 01/03 20:59

as30385438 : 比啦 01/03 20:59

peter98 : 笑死 你一看就知道沒資工的廖阿 = = 說實話也不行 01/03 22:49

peter98 : 你講幹話嗎? 用C可以寫完99%的程式阿 但刷題不是讓 01/03 22:49

peter98 : 你用c刷的 笑死 就跟你說刷題不要用c 用c要手刻 01/03 22:50

peter98 : 阿你的回應還是手刻阿 你的文章邏輯真的是廢到校 01/03 22:50

peter98 : 連glibc不能用你都不知道 廢話倒是一堆 笑死 01/03 22:52

j0958322080 : 用 c 刷也沒有要手刻,很多資料結構會先給你 01/03 22:55

j0958322080 : 會吵用手刻一看就知道沒用 c 刷過 01/03 22:56

j0958322080 : 阿說到用 C 刷題最煩的是 return array 01/03 23:40

LeaderH : 用c刷題真的只是練c而已 不然刷leetcode的重點是解 01/04 00:37

LeaderH : 題的思路 考題也是考思路 用高階語言確實會可以加快 01/04 00:37

LeaderH : 練習的效率 01/04 00:37

yamakazi : 又再崩潰了,貼給你的範例想必沒看過,還在自以為用 01/04 14:04

yamakazi : 手刻 01/04 14:04

yamakazi : 用uthash的macro叫用手刻,真正搞笑的恐怕是你自己 01/04 14:06

yamakazi : uthash有網友認證過leetcode刷題是可以用的 01/04 14:07

yamakazi : 不過看來跟你是沒什麼討論的意義了,裝睡的人叫不醒 01/04 14:12

admon : c是高階語言裡最低階的 01/04 15:23

您可能感興趣