資料結構重要程度 - 工程師

Table of Contents

聽說成大將來有一種新的考試入學方式,

考生全部關起來,寫一整天code?

很好啊,沒coding能力就先淘汰,造福業界,

最近我部門來了一個新人,

問我為什麼要用linked list?

還要memory alloc/free很麻煩,

用array很方便不是嗎?

嗯...好喔。

資結是基礎內功,

一個懂資結、演算法、OS寫出來的code

跟一個array從頭用到尾的code

以效能、空間、clean code的等級落差,

在同公司的薪水價差大概是

「完全沒差」

所以不用太在意,

只要學長姐考古題背好,面試上就好(咦?)

※ 引述《a23395080 (路過看看)》之銘言:
: 資料結構這門課到底重不重要啊
: 如果非資工系的工學院學生沒修DS 但是會寫C
: 對未來找工程師職缺(非軟體工程師)影響大嗎???

--

All Comments

Olga avatarOlga2019-10-26
非本科,借問alloc/free太常使用造成的破碎該如何處
理,平臺是32bit的mcu(非arm或dsp)
Gilbert avatarGilbert2019-10-27
自己弄一塊memory pool來處理特定用途(大小)的allocatio
n/free
Daniel avatarDaniel2019-10-31
認真來說,他的說法並沒有錯.
Ivy avatarIvy2019-11-02
現在硬體能力強資源也很足夠,大部分的應用還真的看不出來差
異。只要人的感受不覺得慢就好。
Callum avatarCallum2019-11-06
這篇才是真的,有四大背背考古題隨便都有工作
Quanna avatarQuanna2019-11-11
wp sp解決一樓問題
Jake avatarJake2019-11-13
看用途吧,殺雞還需要用牛刀嗎
Una avatarUna2019-11-16
推一個 只要performance沒有明顯差異 能簡單就簡單
Ingrid avatarIngrid2019-11-19
去看slab的code
William avatarWilliam2019-11-22
寫太難後面接手的也很難維護
Ina avatarIna2019-11-23
這問題我有想過 list好處是能夠依照需求隨時增加減少 ar
ray在程式執行時比較難隨時增減 array好處則是儲存空間
比list小 但壞處時是沒辦法做二元搜尋樹
Michael avatarMichael2019-11-26
至於一樓的問題 我記得那通常是OS處理的問題 mcu似乎無
Oscar avatarOscar2019-11-27
array的大小要在編譯前決定
Sierra Rose avatarSierra Rose2019-11-29
一樓的問題 看看能不能自己改或做做一個RTOS
Odelette avatarOdelette2019-12-02
光是搜尋樹的問題 array應該就慘敗
Zenobia avatarZenobia2019-12-05
C++裡面用到map的話 map本身也是紅黑樹
Adele avatarAdele2019-12-09
如果只是控制簡單mcu 的確用不到list 但如果你是寫大型
資料網站後端就要會
Rosalind avatarRosalind2019-12-13
不過很多人只會寫C來操作mcu 寫個forwhileifelse 就覺得
自己會寫C++ 會資結演算法
Hedy avatarHedy2019-12-14
問寫韌體的人怎麼樣用人名快速查找電話 他只會用二分搜
尋法不會用紅黑樹map
Emily avatarEmily2019-12-15
但有看過DS ALGO 的人就知道怎麼做 差別大概是在這裡
Edward Lewis avatarEdward Lewis2019-12-15
有些情況array 有效率得多
Kristin avatarKristin2019-12-16
推yamakazi大
Liam avatarLiam2019-12-16
學DS和演算法開始會用時間複雜度和空間複雜度來分析問題
Puput avatarPuput2019-12-18
^就是開始會用
我以前在電機系學的C語言頂多教到linkedlist和array差異
Selena avatarSelena2019-12-21
當然也會提到array存取方便linkedlist空間使用等特性
Frederica avatarFrederica2019-12-25
但沒提到BigO的概念 BigO的概念是真的修資工DS Algo才會
然後很多時候為了實現某個演算法需要用哪個DS輔助
Daniel avatarDaniel2019-12-27
因此兩個很常綁在一起上,但也有獨立只教algo的課
Charlotte avatarCharlotte2019-12-28
獨立教algo的可能就會教比較概念的greedy divide&concur
dynamic programming但要怎樣寫成扣很多時候要某些DS幫
Robert avatarRobert2020-01-01
製造業或賣硬體還是可學起來然後照環境使用!有人想倒著用
就入境隨俗倒著用幫他做大一點開山立派 XD
Wallis avatarWallis2020-01-06
一點淺見覺得可以修DS和algo當作評估自己想不想走CS
Caroline avatarCaroline2020-01-09
有錯再請前輩們打臉修正QQ
Queena avatarQueena2020-01-14
然後寫韌體真的相對用比較少DS和Algo
我同學在IC廠寫韌體他真的不會tree graph這些東西
Hedy avatarHedy2020-01-16
他最多就會用array linkedlist和stack queue
Hazel avatarHazel2020-01-20
覺得不懂os問題比較大
Andrew avatarAndrew2020-01-20
一堆有現成解決記憶體管控的工具可以用 為什麼不學
一下呢
Heather avatarHeather2020-01-24
紅黑樹麻煩 資源有限不如用 hash table
Steve avatarSteve2020-01-27
linkedlist我還算熟,但老實說真的不常用
Cara avatarCara2020-01-29
額 hash雖然查找快 但所佔的空間更大吧
Dora avatarDora2020-02-01
能用mem換來的都是小事
Damian avatarDamian2020-02-05
不是寫IC的記憶體都不重要
Vanessa avatarVanessa2020-02-05
如果真的要循序處理array比較快好嗎...
Jake avatarJake2020-02-10
寫FW的 記憶體常常就那麼丁點大 沒多少機會讓你用複雜
Irma avatarIrma2020-02-11
的東西 除非就像前面推文講的一樣你要刻類似RTOS之類的
Tracy avatarTracy2020-02-13
不一定耶,多維陣列速度搞不好比指標慢
Heather avatarHeather2020-02-15
現在很多系統是engineer time比computer time貴
Rebecca avatarRebecca2020-02-18
簡單好維護的code比完全優化的更實際
Daph Bay avatarDaph Bay2020-02-21
推除非IC記憶體, 硬體廠一些老鳥覺得會C很厲害完全
Edward Lewis avatarEdward Lewis2020-02-22
不知道在秋三洨...
Eden avatarEden2020-02-26
現在很少這種老人了吧 都嘛大碼農時代惹
Gary avatarGary2020-02-27
寫dsp的表示qq,連alloc都沒得用
Ophelia avatarOphelia2020-03-01
結論正確給推
Audriana avatarAudriana2020-03-04
看用途 END
Leila avatarLeila2020-03-07
說實在,沒有大量數據處理,哪有需要那些資料結構,整天cal
l函數庫的就更不用說了
Olivia avatarOlivia2020-03-11
結論正確
Charlotte avatarCharlotte2020-03-12
結論正確xd
Carol avatarCarol2020-03-15
感謝各位大大無私分享
Madame avatarMadame2020-03-15
張飛比岳飛 array如何O(1) delete?
Thomas avatarThomas2020-03-18
一堆瞎扯結論正確的 就不要開玩笑被別人當真的 會害到人
Susan avatarSusan2020-03-22
看推文,就知道台灣業界為何不重視軟工,出不了殺手級應
用服務,只配做代工
Delia avatarDelia2020-03-26
寫好了還比別人用其他方法解的慢…
Lily avatarLily2020-03-29
driver 裡面很多 listhead
Mary avatarMary2020-04-02
面試就是頭過身就過
Hardy avatarHardy2020-04-06
一樓,去搜尋reap allocator
Andy avatarAndy2020-04-08
會用array 就表示沒有要delete了 為什麼要care 如何O(1)
Liam avatarLiam2020-04-12
Delete? 當function的local variable 就夠了
Eartha avatarEartha2020-04-17
舉個例 做counting sorting 你會用array 當bucket還是list?
Michael avatarMichael2020-04-19
假設是寫 c++的話,當然用stl啊,誰在那邊跟你造輪子
Isabella avatarIsabella2020-04-20
不好意思我有看到前面有說如果做記憶體 IC 才需要懂資
料結構 那我想請教一下各位前輩 如果未來想走通訊 Baseb
and IC 或是 DSP IC 設計的話 有需要修資工必修:資料
結構和演算法嗎?感謝回覆 ~