Are learning data structures and algorithms really useful at work? | Nic

แชร์
ฝัง
  • เผยแพร่เมื่อ 6 ก.ค. 2024
  • Hard-core knowledge may not be fully used by every engineer in career development, but friends who are undergraduates, changing jobs, or self-taught to become engineers should know that these solid background knowledge can be learned early and in the future In the days, there is only good and not bad.
    Through the sharing of my real experience in this video, I will tell you that these seemingly boring theories in college are actually programming internal skills, but the internal skills that have been sleeping for a long time happen to come into use in the career journey.
    chapter:
    00:00 Is it useful to learn this?
    00:52 The distance between me and the crash course
    04:45 The impact of business growth
    06:36 Basic skills and knowledge popular science
    If you like the video, you can help like it, share it, and subscribe! 😘
    ━━━━━━━━━━━━━━━━
    ⭐ Shopee store:
    ⭐ instagram (daily life): / niclin_tw
    ⭐ Facebook (information sharing): / niclin.dev
    ⭐ Blog (technical notes): blog.niclin.tw
    ⭐ Linkedin (Personal resume): / nic-lin
    ⭐ Github: github.com/niclin
    ⭐ Podcast: anchor.fm/niclin
    ━━━━━━━━━━━━━━━━
    🌟 Any questions or cooperation invitation mailbox: niclin0226@gmail.com
    #资料结构#演 Algorithm#Computer Overview#Frontend#Backend#Engineer

ความคิดเห็น • 521

  • @YChien-bv9rv
    @YChien-bv9rv 3 ปีที่แล้ว +395

    我永遠記得成大某教授說過的話:「很多你覺得沒有用的知識和理論,其實是因為你還沒達到需要用它的高度。」

  • @user-nm8gz3xt2o
    @user-nm8gz3xt2o ปีที่แล้ว +73

    小明後來發現講得一嘴好DS/Alg的前輩連Big O都不懂。

  • @user-jp5lb1kq3x
    @user-jp5lb1kq3x 3 ปีที่แล้ว +52

    推:人生沒有白走的路
    但是有壞掉的肝,走路前請珍惜健康。

  • @zhuolintsai9030
    @zhuolintsai9030 3 ปีที่แล้ว +141

    學習永遠不嫌晚,我也是一名自學而成的前端工程師,目前正在補強資料結構跟演算法。我想無論是自學的還是本科系的開發者,遲早都會遇到這些門檻。

    • @niclin
      @niclin  3 ปีที่แล้ว +7

      對,如果都遇不到可能都在做 business logic

  • @kisaraki88
    @kisaraki88 3 ปีที่แล้ว +33

    我也是非本科系出身的程式設計師,資料結構與演算法,在一般簡單用途上可能沒啥感覺,但是某些關鍵時刻,會發現這些其實超重要。
    印象最深的一件事,就是有一次要比對兩串名單,把相異之處比對出來。我還在思考怎麼用迴圈一筆一筆抓字串比對的時候,隔壁資工出身的同學,直接跟我說,兩串名單轉成陣列或Set,取差集就好了。
    瞬間感覺我是用低階語言思考、他是用抽象邏輯思考。這就是差別。

    • @spencerchen1698
      @spencerchen1698 9 หลายเดือนก่อน +1

      這也是我這半路出家遇到的狀況,同樣也是在想該怎麼對兩串名單做比對,同樣也是一個資工系出來的同事跟我講用差集哈哈!

  • @09ipelong1214
    @09ipelong1214 3 ปีที่แล้ว +72

    真的很希望過去幾年就讀資工系的時候,能有人告訴我這些
    如果當時能被激發出興趣,或許現在的我就會踏上工程師之路,一邊賺錢一邊做自己喜歡的事
    話雖如此,但現在自己正朝著真正熱衷的領域前進,還是很開心有過去這幾年的經歷,深信著未來某些時刻一定會派上用場,而且這就是我比其他人更有優勢的地方
    給想念資工或正在就讀但沒興趣的人:
    「如同4:19所說,泡在這個環境裡面真的差很多,跟半路出家、速成班只學表面的人相比,差了不只一點。
    本身在校成績最爛倒數第一,最好可以拿書卷,程式對我來說只是工具,沒什麼特別的熱忱,所以我四處到各系各校去修課,也包含”社會”學分,只為了興趣與有趣而讀而學,連系辦審畢業時看到琳瑯滿目的修課紀錄,都說我被資工系耽誤了XD
    即便如此,身在這個環境還是會被潛移默化,很多東西雖然學不精,但至少還是有個印象與基礎在,也都知道可以哪裡找資源,而且很多原理都是觸類旁通的,讓我們理解吸收相關知識相當快速。
    例如:電子學後段有某個概念,跟無線通訊的carrier frequency一樣,一看到馬上就聯想在一起;我寫過幾種不同的物件導向語言,背後的原理都是一致的
    以後即便不走這條路,但可預見未來還是程式的天下,這些武器放在腦子裡不保養也沒差,當有需要的時候,就能拿出來快速清潔一下,都還是好用的。」

    • @MriWRZ
      @MriWRZ 3 ปีที่แล้ว +4

      想當年進公司時遇到公司的副總上台跟菜鳥們講話時說窮舉法最高,
      講一堆例子讓我的眼睛翻到後腦勺去,
      我心裡想這傢伙絕對不是資工系出生的,
      一查才知道是電機出生的......

  • @hk-sv4tk
    @hk-sv4tk 3 ปีที่แล้ว +9

    謝謝Nic 大激勵!!! 這學期正在上演算法跟作業系統的課 內容比較硬
    但Nic給的經驗值更硬!!!

  • @sisqosnew
    @sisqosnew 3 ปีที่แล้ว +9

    學海無涯,不管你是否學校有學,遇到瓶頸就是要趕快自修或是進修,找到突破點,避免被別人追過外,還要持續分享阻礙其他人,你越是分享,越是協助他人,只會越來越厲害,除非你患有嚴重自戀症,可以無情利用所有人往上爬,後者這種人都是你的最高主管

  • @sakuraakira0
    @sakuraakira0 3 ปีที่แล้ว +12

    非本科系,但有去努力讀結構跟演算法的書,裡面的內容大都已有先人寫成插件或是更好的框架,實務上直接套用即可。讀這些內容我覺得最重要的是能學到思考邏輯,在思考解決方案或優化流程時很有幫助。

  • @K59820433
    @K59820433 3 ปีที่แล้ว +4

    很實用 感謝你 期待更多這系列的影片

    • @niclin
      @niclin  3 ปีที่แล้ว

      感謝你的回覆,讓我更有動力了 XD

  • @promiselove520
    @promiselove520 3 ปีที่แล้ว

    這段影片真的講得很好 我超喜歡

  • @coolbinchuang2114
    @coolbinchuang2114 3 ปีที่แล้ว +2

    這是我目前看過影片中,資訊量最豐富的TH-camR了...
    真可惜我大學時期沒有這個頻道可以看~嗚嗚~

  • @gordonfang0409
    @gordonfang0409 3 ปีที่แล้ว +1

    講得非常好,演算法、資料結構可以讓一名軟體工程師站穩腳跟

  • @wayner314
    @wayner314 3 ปีที่แล้ว +18

    資管畢業 當年資料結構睡好睡滿 低空及格 看到影片前半段 汗如滔滔江水濕的我的椅子不要不要的
    但看完影片尾 介紹必備技能 資料結構的部分我居然大概聽得懂 謝謝Nic把我打到谷底但又給了一小顆火種
    看來還是要找時間把這些內容補點起來了

  • @2748162
    @2748162 ปีที่แล้ว +1

    了不起,真的講的很好,言簡意賅,精簡,直指核心觀念。太讚了。

  • @Perfectafter90
    @Perfectafter90 3 ปีที่แล้ว +5

    當年有看這影片演算法就會認真上了
    不過小明花了2個月,卻能跟我們做著外觀上差不多一樣的東西
    而我們用了4年和幾萬塊才換了張證書
    小明或許可以用1~2年時間補足我們4年的課程
    機會成本來看我們稍微吃虧
    唯一好處可能就像你說的我們泡在這環境裡
    身邊同學也在不同公司上班,要跳槽比較有管道

  • @wahaha2954
    @wahaha2954 3 ปีที่แล้ว +29

    感謝 Nic 的分享,速成班如我,看完影片之後背後的冷汗開始直流
    目前剛踏入這個領域剛滿一年的我,最近開始學習倦怠,
    原本以為影片說的那些東西都是現階段的我不用學的,
    想說到時候遇到再學就好了,現在看來機會真的是留給準備好的人!
    真的很感謝 Nic 幫我這隻井底蛙開了眼界!!!

  • @Xavier-je1ye
    @Xavier-je1ye 3 ปีที่แล้ว +23

    感謝Nic的分享
    我是機械領域的學生
    近幾年來機械產業開始搞起了智慧製造
    最近也開始在接觸演算法相關知識
    希望一切順利XD

  • @johngray6436
    @johngray6436 3 ปีที่แล้ว +5

    感謝分享,現在大二正好在學資料結構,看完之後我覺得更應該要好好學好了>

  • @Ping94777
    @Ping94777 3 ปีที่แล้ว

    這影片提供我不在迷惘的學習方向,感謝!

  • @yhe-ul8nf
    @yhe-ul8nf 3 ปีที่แล้ว

    感谢你分享的经验,非常具体,也让我认识到学到的基础知识体系会在未来的某个工作场合中派上用场。

  • @tiffanywong579
    @tiffanywong579 3 ปีที่แล้ว

    正正回答了我的問題, 謝謝

  • @gary759521
    @gary759521 3 ปีที่แล้ว +9

    現在語言越包越簡單,底層運行跟架構概念真的是要經驗跟實作,踩過坑才能累積的能力,抱持著現在學以後也會有機會用到的心態,等到這些東西都累積起來後 你會發現前人當初設計的高端處,自己在開發時也會設計出更直覺的程式碼架構,不然OOP或者FP這些概念我相信很多工程師到現在還是不能理解,等真的融會貫通各個領域的語言跟看很多架構規劃時,新技術出現學習的時間也會越來越短,全端也會變成必經之路,搞到後面反而想回去寫組語,多寫些自己有興趣的side project真的是最快也最有趣增進實力的方法

  • @xdlive7428
    @xdlive7428 3 ปีที่แล้ว +1

    雖然我不知道為什麼會跳出這個影片
    但大大的封面做得好好看,可以請問要去哪裡才能學嗎
    我怎麼都搜尋不到

  • @sese2712
    @sese2712 3 ปีที่แล้ว +4

    講得很清楚,我是資工系的,原本對自己對未來很沒信心,看完你的影片突然很有動力!

    • @niclin
      @niclin  3 ปีที่แล้ว +1

      能幫助到你感到非常開心,謝謝你的留言鼓勵 XD

  • @kuokuokuo3231
    @kuokuokuo3231 3 ปีที่แล้ว +5

    其實分治法算是萬用的~難的工作可拆成好幾份慢慢做~動態規劃也可

  • @terrykuo2057
    @terrykuo2057 9 หลายเดือนก่อน

    我目前大學剛畢業, 您拍的這些影片對我非常有幫助, 感謝您

  • @luovickey6886
    @luovickey6886 3 ปีที่แล้ว

    簡潔有力又實用 超棒的

  • @jia-xiongzeng296
    @jia-xiongzeng296 3 ปีที่แล้ว

    非常必要!
    資訊人寫的程式跟其他科系核心差異就在這些地方

  • @user-qn5yn9hr3n
    @user-qn5yn9hr3n 3 ปีที่แล้ว

    這幾年學得有些迷茫,謝謝up主

  • @GamerFrank777
    @GamerFrank777 2 ปีที่แล้ว +2

    雖然我不是學這方面的,但出社會幾年後也有這種體悟。回想起以前所學的知識技能,這些知識技能並不是沒用,只是我不會去使用罷了,懂了學這些知識技能要做甚麼後,在學習的這條路上就像玩遊戲一樣,很有成就感也很有趣。任何微不足道的小事,只要你會別人不會,那麼他就是一種專業技能,就看你怎麼去看待它、使用它了。

  • @sian6553
    @sian6553 ปีที่แล้ว

    太猛 很好解釋了知識基礎的重要性

  • @inm9204
    @inm9204 3 ปีที่แล้ว +2

    資管仔簽到 感謝演算法讓我看到你的影片
    雖然我是決定要做MIS但經過這個影片 我想我需要好好學好資料結構

  • @lilygbetalife994
    @lilygbetalife994 3 ปีที่แล้ว +3

    知識科普第一次聽,前部分有點偏工程的事,對工程界也有初步了解,後半部實用在各行上,好棒的分享^^

    • @niclin
      @niclin  3 ปีที่แล้ว

      在初步瞭解的情況下竟然把他聽完了,感謝你的留言鼓勵

  • @yehao9296
    @yehao9296 3 ปีที่แล้ว

    Hello Nic, 我是來自香港的觀眾,我在中學時期沒讀過IT方面的課目,上大學時候選了Fintech and AI作為我的major,直到上了大二開始學資料結構時才發現有趣的地方,但是我完全沒有coding的基礎,每一份功課都很難靠自己一個人去理解去完成,想問一下你當年求學時期是本來就很有興趣去學programming還是想我一樣學到中間才開始有興趣結果很多基礎跟不上,還有就是用甚麼方法去學習這門課目最有效率?

  • @blackskymax
    @blackskymax 3 ปีที่แล้ว

    轉行人路過 正在學 感謝分享!

  • @timmy5224
    @timmy5224 3 ปีที่แล้ว +19

    許多人希望學校教的技能工作都用得到 但這樣的心態反而局限了自己能選擇的工作 會為了讓自己之前學的不白學 而去做不適合自己的工作
    在學校就是要盡可能的多學習來拓展自己的視野 學的越多 用到的機會就越大 也越能找到適合自己的工作

    • @phone__4486
      @phone__4486 9 หลายเดือนก่อน

      內卷卷起來

  • @HarryJiang12
    @HarryJiang12 3 ปีที่แล้ว +1

    會有用吧
    像ReactJS, 他背後就是一個component tree
    如果有學過tree, 對於理解運作規則就會比較有感覺
    git底層是個acyclic directed graph
    哪天要深入底層, 學過DS /Algo 就會比較有感覺
    若只是純粹看學校的課 真的會不知道在幹嘛
    還是要搭配一些實務的例子連結 就會有感覺了

  • @jengjrlee
    @jengjrlee 2 ปีที่แล้ว

    知識就是力量!先盡量學起來

  • @ken614215
    @ken614215 3 ปีที่แล้ว

    哪怕我現在已經不走這條路,我也有曾經的歷程,真的覺得這些知識好用

  • @yojaychang
    @yojaychang 11 หลายเดือนก่อน

    還有一個地方常常會用到,就是把一堆資料如array, list, set的data做分組,實務上是轉到map裡,要分到同一組的就放到同個map key, value可能就用list來存放同組的資料。

  • @Yvess01480
    @Yvess01480 2 ปีที่แล้ว

    謝謝Nic分享~~~

  • @goldendoge4278
    @goldendoge4278 3 ปีที่แล้ว +197

    不限於軟工,只要是技術類,在追求品質的時候,勢必會需要理論的支持,科學是人類推砌的結晶,學科是對這些結晶的歸納與分析,怎麼可能會用不到?
    但是回過頭來,這些理論使否派上用場,終究要看公司的政策,套句PTT的說法「面試造火箭,工作擰螺絲」,這種事也很常見

    • @swwei
      @swwei 3 ปีที่แล้ว +4

      在某些領域,「擰螺絲」也是大有學問。

    • @user-uq2md1iy9u
      @user-uq2md1iy9u 3 ปีที่แล้ว +3

      @@swwei 好比說是日本製的螺絲跟德國製的差別...

    • @yunresttime
      @yunresttime 2 ปีที่แล้ว +3

      還有什麼螺絲需求的扭力之類的(?!)
      工作上就有新人扭到每個都滑牙.....

  • @godlychen
    @godlychen 3 ปีที่แล้ว +9

    專業~ 講得淺顯易懂, 能讓那些想走捷徑的人了解為什麼當初要對那些枯燥乏味的課下苦功.

    • @niclin
      @niclin  3 ปีที่แล้ว +2

      有下過苦功才能懂

  • @MrBigTree1108
    @MrBigTree1108 3 ปีที่แล้ว +2

    第一次看到資工背景的YTR能把資工相關的東西講的這麼有趣 大推

    • @niclin
      @niclin  3 ปีที่แล้ว +5

      這留言我可是等了半年啊!!!!

    • @MrBigTree1108
      @MrBigTree1108 3 ปีที่แล้ว +2

      @@niclin 喜歡你的剪接節奏和說話抑揚頓挫 不像一般影片和講師那樣催眠

  • @joeyshias
    @joeyshias 3 ปีที่แล้ว

    支持NIC繼續創作

    • @niclin
      @niclin  3 ปีที่แล้ว

      感謝你的留言支持😁

  • @kenmity789
    @kenmity789 3 ปีที่แล้ว

    你解開了 我多年的疑惑 原來資料結構可以用在那些地方

  • @user-xm3uc1il9z
    @user-xm3uc1il9z 3 ปีที่แล้ว +1

    有新影片先給讚

    • @niclin
      @niclin  3 ปีที่แล้ว

      感謝感謝!

  • @Sisi-qd9jc
    @Sisi-qd9jc ปีที่แล้ว

    谢谢nic,无价的知识分享!!!!

  • @jimmyliaouwu
    @jimmyliaouwu 3 ปีที่แล้ว +9

    前端工程師前來分享一下,
    之前在研究 React.js Concurrent Mode,
    看到了這篇文章 [1] 在說明 Concurrent Mode 背後的實作原理,
    裡面就有提到 Linked List、Tree、DFS。
    我就想到常常有人說前後端用不到資料結構演算法,尤其時前端,
    嗯~我想是因為我們多半碰到的都比較偏向單純的商業邏輯吧。
    對了,其實很多 UI 背後的邏輯也跟資料結構演算法有關啊!
    像是 iOS 的 UITableViewCell 就有用到 Queue [2] 來重複使用 Cell,
    所以囉~如果想做出高效能質量好的 UI ,背後也還是需要這些資工知識的。
    [1] 深入頗析 Concurrent Mode:zhuanlan.zhihu.com/p/60307571
    [2] UITableViewCell 的重用機制:medium.com/@mikru168/ios-uitableviewcell%E7%9A%84%E9%87%8D%E7%94%A8%E6%A9%9F%E5%88%B6-%E7%84%A1storyboard-94e766420b57

    • @niclin
      @niclin  3 ปีที่แล้ว +3

      只做 business logic layer 確實很少用到
      但要從 framework consumer 到 framework creator 勢必就要懂這些東西了
      尤其這些工具啊、框架啊,很多優化的原理就是需要這些背景知識的
      感謝你的分享,很有條理

    • @haha-eg8fj
      @haha-eg8fj 3 ปีที่แล้ว

      问题是99%的公司都不会重新造一个react。也很少会有比它做得好的,因为这是一个投入很大很多人协同制作了N个版本后的产品。它最最最原始的版本也许用的是最最简单的演算法。

    • @jimmyliaouwu
      @jimmyliaouwu 3 ปีที่แล้ว

      ​@@haha-eg8fj 你說的沒錯,但是當你有需要理解某些技術背後的原理時,就有可能會碰到資料結構或演算法了。

  • @keithlau7747
    @keithlau7747 3 ปีที่แล้ว

    個人覺得其實資訊工程的實作跟理論其實一直都是的關聯很大,只是要實際用出來或在什麼情況要用會有點難,而且大部分的時候我們實作與到跟理論一樣的東西是才真的懂原來是這樣一回事

  • @kp3845
    @kp3845 3 ปีที่แล้ว

    工程相關工作做了十年、每天都要學習不同領域的知識、但最重要的還是解決問題的態度。

  • @user-ih8tg9jy2l
    @user-ih8tg9jy2l 3 ปีที่แล้ว

    帥,說的很好

  • @a0970537500
    @a0970537500 3 ปีที่แล้ว

    日子一久沒碰都忘記了,但是你紅黑樹的那段出來,真的一個瞬間回想到老師當時講的範例~

    • @niclin
      @niclin  3 ปีที่แล้ว

      瞬間湧上的回憶 XD

  • @1127chiu
    @1127chiu 3 ปีที่แล้ว

    讚 很實用

  • @jojo3795
    @jojo3795 3 ปีที่แล้ว +1

    感謝分享~~

    • @niclin
      @niclin  3 ปีที่แล้ว

      不客氣!

  • @user-gc8bt8cz4e
    @user-gc8bt8cz4e 3 ปีที่แล้ว

    我只好奇業務處理方向不同後薪資跟小明有不同嗎?

  • @Jim-xo1cv
    @Jim-xo1cv ปีที่แล้ว

    我則是大學電機系,研究所工業工程,後來自學人工智慧理論,現在是IT研發,做資料安全的程式,也開始碰到資料庫的東西,深深地感覺人生的不確定性跟知識缺乏的時刻,現在總是很希望有更多的時間來好好的打好基礎學習這方面的知識,學習永遠不嫌晚,永遠覺得自己還可以加強。

  • @xiaoxiaoxiao2043
    @xiaoxiaoxiao2043 3 ปีที่แล้ว

    请问5:22所涉及的网页在哪里可以找到?我觉得这个网页对我学习数据结构非常有用,请问该网页地址是什么呢?谢谢

  • @ying-chihuang9306
    @ying-chihuang9306 3 ปีที่แล้ว

    過於真實wwww
    不過遇到問題真的要用心去思考,才能激發那些知識~

    • @niclin
      @niclin  3 ปีที่แล้ว

      真實故事,沒加油添醋,只為了保護當事人修改了一下名字而已 XD

  • @ethanlin871
    @ethanlin871 3 ปีที่แล้ว +20

    你覺得課程編排改為,在大學求學時、甚至高中時就先學速成班的東西然後開始應用,再回頭補足基礎概念,會不會對學習上更有熱情跟效率?

    • @HildasXD
      @HildasXD ปีที่แล้ว +3

      絕對會

    • @jackymamawang
      @jackymamawang ปีที่แล้ว +2

      會,因為你是之後因為有興趣才學的,知道哪裡不懂就去補足,但你一開始學那些理論根本就不知道這要幹啥

  • @little-ghost-rider
    @little-ghost-rider 3 ปีที่แล้ว +1

    學理論很重要 但是了解理論的用法更重要

  • @sthouseke
    @sthouseke 3 ปีที่แล้ว +5

    這真的很重要,以前我也覺得實作很好就好,
    理論一直以為是那些大公司和製作這些軟體的公司才會用到的東西,
    但這些理論越好,在選擇solution的時候會越快,
    可惜出社會就轉硬體工程師了,軟體也就用不到了 XD
    只是硬體工程師也是一樣 XD

    • @niclin
      @niclin  3 ปีที่แล้ว

      沒錯,就是在選擇 solution 的時候多那麼一份內功

  • @user-dm8lb1vi2l
    @user-dm8lb1vi2l 3 ปีที่แล้ว +13

    當你們為游泳池裡的客流量很穩定而沾沾自喜時,我已經看到你們沒請救生員的悲劇

  • @i-chinghsu337
    @i-chinghsu337 3 ปีที่แล้ว +15

    我是資訊管理所畢業,從事的工作完全和"資料探勘" "資料庫管理" "網路通訊協定原理" "類神經網路演算法" 沒有關係,後來我的碩士論文是寫"密鑰生成" ,在台灣也是天天打EXCEL做報表、 幫主管做POWER POINT,資訊長的位置被業主的親人佔位一坐就是45年,根本不會輪到我,還被公司提前退休(我目前46歲)。結論就是學校敎得東西永遠和實務沒有關係。重要的位置、要職都在老人或企業主的親人佔住了。
    目前把學歷經歷PO到求才網上,也是找不到工作,只好重新學習AutoCAD 看能不能找到工作。

    • @jiadingguo9603
      @jiadingguo9603 3 ปีที่แล้ว

      請問什麼學校的資管所啊?

    • @chiao0910
      @chiao0910 3 ปีที่แล้ว +3

      資訊所畢業,加上當兵的時間,假設你26歲找到當初那份工作
      結果你在這樣一個不適合你專長的工作虛度20年,不計劃跳槽、不思考精進,直到人生最精華的時間被浪費光了,才開始抱怨
      那其實不論你學什麼專業,基本上結果都會是一樣的。

    • @thomaschiu8672
      @thomaschiu8672 3 ปีที่แล้ว

      找工作不是只看個人能力,運氣也很重要,在大公司,拍馬屁能力比專業能力重要多了.

    • @chiaoyangcheng9290
      @chiaoyangcheng9290 3 ปีที่แล้ว

      要不要嘗試蓋溫室種田啊,在台灣種溫室一堆科技業都做得比農科生還要好一大截

  • @Tedliu1992
    @Tedliu1992 3 ปีที่แล้ว

    讚 我重新開始學習

  • @oldpig5397
    @oldpig5397 3 ปีที่แล้ว +11

    絕對有用。不要像某個姓呂的某歷史補習班,他有個影片嘲笑最沒用的課是數學。

    • @user-uu9dk8dd9p
      @user-uu9dk8dd9p 3 ปีที่แล้ว

      你怎麼會對那一個影片認真呢?XD

  • @yangjimmie1456
    @yangjimmie1456 2 ปีที่แล้ว

    去年剛讀資工大一時看不太懂這些資料結構 B Tree Big O, 但現在回來看到這個影片 腦袋就會瞬間回想到教授教的東西

  • @r07131
    @r07131 3 ปีที่แล้ว +1

    大學資工4年,如果其他東西沒學好就算了,但只要資料結構、演算法、程式語言這三個有學好就值得了,以後出社會學東西都會很快,個人甚至覺得花4年打好這三個基底一點也不誇張

  • @zhenchengyang1905
    @zhenchengyang1905 3 ปีที่แล้ว +5

    感覺程式類的課程還是從商業邏輯實現一路學到深層技術才是循序漸進的

    • @yojaychang
      @yojaychang 11 หลายเดือนก่อน

      很好的概念,就是先求有再求好,先拿到60分再說,反正學校學的不一定用得到。
      相反的,只在學校寫過作業的,畢業後還真銜接不上業界的工作。

  • @RogerShih-wm9pr
    @RogerShih-wm9pr ปีที่แล้ว +1

    從1986年左右開始寫程式,雖然已經打包回家了。
    一個感想,資料結構也好、演算法也罷、計算機概論到系統設計,都是很重要的基礎知識,雖然隨著高階語言越來越多,重要性降低了,但還有一種知識,個人覺得是最重要、最無形、也影響最深刻的,那就是數學。
    數學訓練出來的邏輯能力都可以受益無窮,不管什麼樣的新知識,都跳不開邏輯思維的基礎,邏輯越強,汲取知識的速度越快,解決問題的速度也越快。
    其實大學教育說到底,訓練的就是邏輯思維,這也是為什麼看似學了很多工作用不上的知識,但大學生比高職生就是有差的原因。
    這不是說高職、專科生就真的比不上大學生了,事實上,邏輯思維的訓練是最容易自修的能力,但也是最容易偷懶的,看個人自己願不願意下功夫去做而已。
    我唸書的時候是80年代,那時根本沒多少正規課程,程式設計的課程都是掛在各種硬體工程科系下面....所以....多接觸硬體其實也有不少好處的....

  • @linleyu658
    @linleyu658 3 ปีที่แล้ว

    binary trree还是可以平衡的吧 可以自己改binary tree结构 根据高度自平衡

  • @goodness8895
    @goodness8895 3 ปีที่แล้ว

    太讚了!解開我這長期大學理論是否真的能實際用在工作上長期的疑問?
    但想問Nick,以一個非本科生將來要走資深的前端工程師是否也要讀演算法和資料結構呢?

    • @niclin
      @niclin  3 ปีที่แล้ว +1

      只做 business logic layer 可能一開始用不到,但等哪天要做優化要挖底層解決更深的問題,想必都是得要的
      再來如果你想找更好的工作挑戰更高的職涯,是一定要會的

    • @goodness8895
      @goodness8895 3 ปีที่แล้ว

      @@niclin 感謝回覆

  • @user-jp1cb1fm8l
    @user-jp1cb1fm8l 3 ปีที่แล้ว

    看完發現
    我現在準備的研究所考試科目都是精華啊哈哈哈
    BTW 影片中紅黑樹的部分如果用AVL tree實作如何呢?

    • @rickwang5367
      @rickwang5367 3 ปีที่แล้ว

      AVL tree 的 rotation比較複雜,效能差距不大的情況下紅黑樹好像用比較多

  • @little712115
    @little712115 3 ปีที่แล้ว

    推推~

  • @KL-gc2hx
    @KL-gc2hx 3 ปีที่แล้ว

    循环队列与链表有些用,其他的都没用上,可能行业问题吧

  • @user-kz6xd8zx2z
    @user-kz6xd8zx2z 3 ปีที่แล้ว

    謝謝分享

  • @paulplayai2673
    @paulplayai2673 3 ปีที่แล้ว

    在大學的時候我有學過資料結構和演算法,二元樹的觀念我也還記憶猶存,資料結構和演算法蠻重要的,工作也會用到,
    請問計算機組織和計算機結構這些理論實際寫程式的時候會遇到嗎?

    • @ichunlai
      @ichunlai 3 ปีที่แล้ว +1

      寫韌體時就會用到。高階一點的硬體要設定mmu,要處理cache coherence,那時就會把課本拿出來啃了。

  • @HsuChiChen
    @HsuChiChen 3 ปีที่แล้ว

    請問 5:26 是用什麼軟體跑的?

  • @yesa3999
    @yesa3999 3 ปีที่แล้ว

    您好,小弟今年大學電機系畢業,看了您的影片想請問
    在網頁開發這塊領域,電機系到底能不能被稱為本科系?
    雖然必修課有修過程式語言,但是並沒有修過資料結構、演算法、網路相關課程
    實在不清楚自己在市場上的定位

    • @niclin
      @niclin  3 ปีที่แล้ว

      電機系的跟網頁開發距離其實很遠,因為我自己高中是念電機,大學念資工
      我覺得不能說是本科系耶,有非常弱的連結而已
      我印象中電機當時有學過怎麼拷程式碼進去硬體,那時候寫的程式跟網頁就天差地遠了,但你要說跟程式有關,也是有那麼一丁點相關

  • @kblueleaf
    @kblueleaf 3 ปีที่แล้ว

    資料結構許多都還挺有用的
    有一些是互相通用的變體也可以看情況選用
    我覺得很多學了不會虧的(

  • @chenlakers1362
    @chenlakers1362 3 ปีที่แล้ว +15

    非本科出身的推一個,這些真的很重要,剛開始沒感覺,工作1年以上後才開始發覺這些東西的重要性。
    很多公司喜歡本科生不是沒有道理,因為他們潛力、上限都比非本科生高很多,差距就在這些理論知識

    • @dwarfking8585
      @dwarfking8585 3 ปีที่แล้ว +1

      那您如何克服呢? 你覺得畢業才轉職的劣勢跟優勢在哪~

    • @sakuraakira0
      @sakuraakira0 3 ปีที่แล้ว +6

      @@dwarfking8585 不斷去學就好啦。軟體工程就是一個無止盡的學習坑,跟其他職業比要更新的知識太多了。

  • @toppy368
    @toppy368 3 ปีที่แล้ว

    資管仔路過,有資料結構沒演算法
    不過資料結構對我很燒腦,重修第二次
    目前工作沒遇到,但是某一次去玩機台遊戲時,因為很多人排隊,因此採用卡牌,也就是先到的人先放卡片,卡排卡夾會寫順序
    突然覺得,排隊的方法如果複雜一點也許會很接近演算法可以操作的空間…
    二元搜尋我有印象的原因是第二次修這堂課時,我的通過條件就是要解二元搜尋

  • @louis02023
    @louis02023 3 ปีที่แล้ว

    您好請問如果是前後端開發的工程師,除了資料結構與演算法,我有需要去讀計算機結構與組織和作業系統嗎? 另外你工作時有需要使用到線性代數嗎? 謝謝!!

    • @unnhao
      @unnhao 3 ปีที่แล้ว +1

      我是前端,在平常工作上很少用到線性代數或三角函數,但某些互動式動畫是需要的,我認為這會是我跟隔壁的同事最大的差距,不過是我自己在前端比較愛繪圖動畫互動相關

  • @Lando113
    @Lando113 3 ปีที่แล้ว

    乾 有夠勵志

  • @a23919763
    @a23919763 3 ปีที่แล้ว +1

    簡單說知識就是工具,只有不會使用工具的人,沒有沒有用的知識。
    順便也提醒,不是學了資工系就一輩子只學程式就好,
    懂更多機械、電子甚至物理化學相關的知識,對於更專業領域的工作也有極大幫助。

  • @user-kc8qb8qf7r
    @user-kc8qb8qf7r 21 วันที่ผ่านมา

    说白了就是学校在不恰当适宜的时候教了不恰当的事,学校里教的东西肯定是要能够对接企业的,这样才能找到工作,在提升之后对程式有概念之后再学习各种算法,我就是学Python之前完全不清楚内存管理,但是学了c++后我就开始慢慢了解,后面学习CUDA,然后再深入学习了解显卡的架构组成原理,如果一上来就让我学显卡的硬件架构我肯定是学不会,但是在你慢慢自学了解的过程中你构建了一个计算机的认知体系后这才是真正应该学习算法的时候。

  • @ssswywle7896
    @ssswywle7896 2 ปีที่แล้ว

    我想請問Nic大大,我今年22剛補完高職學歷,完完全全沒有經驗,所以去參加了速成班。補習班因為我沒學過這相關的知識,我也不清楚方向,於是推薦了我python跟java的課程,我現在是打算半年能夠讓自己增加多少的知識就盡量去學習,本身對程式語言有很大的興趣也因為這個興趣,看到了Nic大大給我們很多受用的觀點、知識,讓我在學習過程中很開心,但是我自己學了基礎語法,就不知道接下來要怎麼學習比較好,我認為基礎要打好,但是我不太知道學習的方向該往哪邊走,希望Nic大大看到可以指點我一下,謝謝!

  • @user-uy2fp9ol2i
    @user-uy2fp9ol2i 2 ปีที่แล้ว

    我想請問Nic如果寫程式是為了影像處理或是訊號與系統(偏電機類的領域),而非資料庫等等,那資料結構和演算法會很重要嗎

    • @davidextr539
      @davidextr539 ปีที่แล้ว

      重要的,
      影像與訊號就是一堆資料量素在處理,
      還要看您學習或工作處的位階在那裏,
      您可專攻訊號處理模式,
      速度優化部份交由優化人員處理也是一種配合協同模式

  • @ks9600371
    @ks9600371 2 ปีที่แล้ว

    本身是商科背景,轉職前端工程師;
    目前工作滿2年,熟悉Html CSS JS Git...等開發必備的能力
    想進一步提升自己,所以想提升程式本科的這些基礎能力
    請問該如何提升呢?
    希望Nic大介紹相關資源跟學習路線,謝謝

    • @yojaychang
      @yojaychang 11 หลายเดือนก่อน

      其實很多工作都用不太到,有想用的資料結構通常程式語言就有內建了,不用太執著在這一塊,反而覺得應該轉而瞭解內建資料結構的特性以及怎麼用更實在,比如ArrayList,HashMap,TreeMap,HashSet.....Collections等等
      等你這些都摸很熟了有興趣再去研究這些API怎麼實作的也不遲(但我還是必須說,有現成的API盡量不要自己造輪子,造成自己跟別人的困擾,真的有機會自己造輪子的機率不高,除非是開發產品,如資料庫軟體,作業系統,交易系統,等等,多瞭解不是壞事,但只在真正有需要用到的場合才自己造輪子)

  • @tammytong2594
    @tammytong2594 3 ปีที่แล้ว

    想請問一下片中所說的商業邏輯開發(如獎勵制度、會員登入登出系統),是屬於前端還是後端?本人目前是即將畢業的大學生,也喜歡用程式寫類似這種的功能或系統,但我對於前端的理解一般都是拿到UI給的設計圖,然後照著設計的的排版顏色等去用程式實現並放到網頁上,對後端的印象就是管理數據、資料庫及API,所以不知道像這種撰寫功能的部分是屬於前端還後端?

    • @niclin
      @niclin  3 ปีที่แล้ว

      資料結構的邏輯實作通常屬於後端
      前端比較偏向畫面、互動等邏輯

    • @tammytong2594
      @tammytong2594 3 ปีที่แล้ว

      @@niclin 感謝回覆!!目前在抉擇要往前端還是後端發展,因為喜歡寫邏輯實作這類的東西,但又覺得前端相對後端好像比較能立刻顯現出成果所以容易有成就感,這樣會不會因為比較有成就感而相較後端更容易保持動力?

  • @gm8812
    @gm8812 3 ปีที่แล้ว +1

    這影片早10年出現多好!!!

    • @niclin
      @niclin  3 ปีที่แล้ว

      可惜那時候我才 19 歲 🤣🤣

  • @orzwerty5539
    @orzwerty5539 3 ปีที่แล้ว

    以前在學電腦相關的時候~ 其實就是不知道學起來能做什麼,可能那時沒人能啟發我吧
    舉例說 組合語言 學起來能做什麼? C語言學起來能做什麼? Basic學起來能做什麼?
    10年20年30年過去了,我依舊不知道當時學這些東西能做什麼,所以我也只能在一家製造工廠當小技術員到人生結束這樣
    或許就像影片所說的~ 有那樣的概念會比較知道要往哪個方向去找答案
    但我的問題我還是搞不懂,所以可以用我能理解的方式來告訴我嗎? 謝謝

  • @ycebr2487
    @ycebr2487 3 ปีที่แล้ว

    想問mic大大 目前選科系方向
    本身不是資訊科出來
    軟體工程系 跟資訊系 會有落差嗎

    • @niclin
      @niclin  3 ปีที่แล้ว

      資訊系是什麼啊?
      如果你是要選大學科系的話,落差不會很多,最重要還是個人努力

  • @k1212312
    @k1212312 3 ปีที่แล้ว +53

    當年有人做這影片的話
    我就不會理論課都在睡覺了....+1

    • @user-go7nk9wy1l
      @user-go7nk9wy1l 3 ปีที่แล้ว +3

      實際上不會的,最後多數還是泡在Google學理論

    • @aaw4519
      @aaw4519 3 ปีที่แล้ว +9

      別傻了 你還是會睡

    • @senone123
      @senone123 3 ปีที่แล้ว

      睡吧!孩子夢理也有。

    • @Chasel_Alex
      @Chasel_Alex 3 ปีที่แล้ว

      已經睡掉了

  • @vsvm8769
    @vsvm8769 3 ปีที่แล้ว +5

    你講的二元樹例子讓我頗印象深刻,而且也簡單易懂。
    雖然現在還在學習演算法,但可能過不久自己也會碰到跟你一樣工作之後會需要碰到的技術問題。
    看來還需要把基礎打更好才行。
    謝謝分享。

    • @niclin
      @niclin  3 ปีที่แล้ว +1

      不客氣,也謝謝你的留言
      當然跟大家分享我的真實經驗才有共鳴啦
      我也是當初沒學好,後來才想到,但要用到的時候確實比完全沒學過的還更容易理解
      再來能夠一直往上走的,勢必要解決更多的商業問題、技術深度問題

  • @user-so7xc2wp9w
    @user-so7xc2wp9w 3 ปีที่แล้ว +25

    之前聽過一個演講
    說這像是武俠小說的內功和外功
    講者說資料結構、演算法、線性代數就像是九陰真經上卷的內功
    一開始感覺沒處不大 而且對實戰不如外功直接
    直接學前端三劍客或Keras、tensorflow那些就像是九陰真經的下卷的外功
    可以較快的看出成果 快速變成堪用的即戰力 但到後期可能會不如前者
    當時聽覺得滿有道理的 不知道大家覺得這個說法有什麼看法?

    • @ianbomberfull
      @ianbomberfull 3 ปีที่แล้ว +3

      就像學校喜歡講的點線面的概念
      每個點看起來都是獨立的一個點,但當你開始把他們連成一條線後你才會知道怎麼使用,最後就會形成一個面,而其大小端看你能成功連起多少條線

    • @niclin
      @niclin  3 ปีที่แล้ว +5

      我很認同,我自己也是這樣感覺的,很多程式語言的 API 、技巧,只是招式
      但要解決更深的問題內功就顯得非常重要了,此時也會增強你的招式
      所以才會有很多面向取決於一個工程師的精通程度,從程式語言熟練度、資料結構演算法、設計模式等等

    • @HansWu5566
      @HansWu5566 3 ปีที่แล้ว +1

      會Fundamental computer science 之後要學什麼都快. 線性代數微積分是看行業. FANNG都是認為你有足夠CS能力,把你丟到任何一個Team都能做事,相反如果只會一些什麼簡單包好的工具. 做的事情規模與深度一定沒多大.

    • @KirkxL
      @KirkxL 3 ปีที่แล้ว

      黑客的腳本小子和真懂的🤣🤣

    • @wuichen01
      @wuichen01 3 ปีที่แล้ว

      講得太好了

  • @YangMC
    @YangMC 2 ปีที่แล้ว

    B tree 用google查詢,學一下會需要很久嗎?

  • @user-yh6du9zm8s
    @user-yh6du9zm8s 3 ปีที่แล้ว

    我比較好奇2個月能撐一年的速成班是哪裡找的

  • @1314love
    @1314love 3 ปีที่แล้ว

    棒!!!