iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 1
4

自我介紹

哈摟,大家好,我是小碼農米爾,其時我加入 it 邦蠻久了,之前一直沒有修改暱稱,使用的是 「fysh711426」 這個帳號,不過今年發生了一些事,這裡就不說了,所以想給自己一個新的名子,重新開始。希望小小碼農,有一天也能用程式改變世界。

新技術焦慮症與建議

在這個框架、技術大爆發的時代,你是否也得了「新技術焦慮症」,不停的學習新技術、新框架,但內心卻還是感到非常焦慮呢?

遇到這種情況,不妨先停下腳步休息一下,有時候休息是為了走更長遠的路,不需要和別人比較,按照自己的步調去學習、累積,時間拉長一點你會發現原來我進步了這麼多!! 只要今天的自己比昨天更進步這就足夠了

當你學習一門新語言或新框架時,是否感到有些吃力? 或需要花很多的時間才能學會? 如果有那可能是你的基本功還不夠紮實 (給大家一個參考,可能不適用於每個人),這時建議可以回頭去加強基礎的部分,等基礎紮實以後,再去看新語言或框架,你會發現學習的效率提高了不少,程式語言和框架其實只是一套抽象思考的方式,當基本功紮實以後,可以比較容易的抓到重點或差異,學習起來自然就會輕鬆許多。

小結,學習上我會建議,基礎科目和新技術交替學習,兩邊一起成長。


https://ithelp.ithome.com.tw/upload/images/20200916/201068656lKWb4LTEg.jpg

為什麼要學演算法

回到主題,我把基本功分為五個部分 (如上圖)。藍色區塊的基本邏輯和物件導向屬於「基礎部分」,他們延伸出去的橘色區塊則屬於「進階部分」。

在程式初學階段,通常會從藍色區塊開始學起,我們會先選一門喜歡的語言,然後學習基本的程式邏輯,條件式、迴圈、陣列、函數,如果語言有支援物件導向,就會開始接觸,類別、繼承、多型、泛型、等等...,所以歸類為基礎。

接下來為了解決更複雜的問題,就會需要學習「資料結構」、「演算法」,這兩門學科主要是教我們如何將資料變成抽象結構,和評估程式的效能,因為他們比較偏向基本邏輯的更複雜組合和運用,所以我定義為基本邏輯的延伸。而「設計模式」也是相同的概念,是物件導向的更複雜組合和運用,所以我將其定義為物件導向的延伸,三者歸類為進階部分。

為什麼要學演算法? 其實進階項目都很重要,但因設計模式在工作上用到的比較少 (我自己的經驗),所以我會推薦把更多的時間投資在資料結構和演算法上,想要寫出效能優異的程式,這兩門學科是一定要學好學滿的!!!

影片教學 x LeetCode

實作是提升程式能力最快的方式,演算法也不例外,所以這次我以會以 LeetCode 挑戰賽的題目為主題,通過實際的解題過程,和大家一起學習演算法和資料結構。

而為什麼想製作影片教學呢? 一是想挑戰自己,學習不一樣的新事物,二是資料結構和演算法常讓人們覺得艱澀難懂或是枯燥乏味,所以希望能透過影片配合簡單的動畫呈現,讓教學有趣一些,且方便大家理解、加深記憶。

第一次嘗試製作影片,還有很多需要改進的地方,還請各位大大鞭小力一點。
(́◕◞౪◟◕‵)*

發文時間

由於影片製作時間比較長,發現日更完全不可能,所以果斷放棄,大概會像去年一樣吧,半年後還在發文這樣... ((完全無視比賽規則。 ╰( ̄▽ ̄)╭

目錄

  • [Day00] 前言 - 你是否得了新技術焦慮症
  • [Day01] 什麼是二元搜尋法
  • [Day02] 不重複元素的資料結構 Set
  • [Day03] 用於計數的字典 Counter
  • [Day04] 如何計算不包含前導零的補數
  • [Day05] 如何將字元對應到陣列上
  • [Day06] 什麼是摩爾投票法
  • [Day07] 什麼是廣度優先搜尋法
  • [Day08] 什麼是貪婪法
  • [Day09] 什麼是鏈結串列
  • [Day10] 如何實現圖片填色功能 (完結)

結語

感謝大家觀看,我們下次見。 (To be continued.)


下一篇
[Day01] 什麼是二元搜尋法
系列文
演算法升級術 — LeetCode 挑戰賽11
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

2 則留言

0
cathywen14
iT邦新手 4 級 ‧ 2020-09-17 17:18:47

每次想到F大這麼享受程式,煩躁的心就會慢慢穩定下來呢! 期待這次的影片教學!/images/emoticon/emoticon12.gif

哈哈哈,加油加油!!!

0
暐翰
iT邦大師 1 級 ‧ 2020-09-21 19:31:22

置板凳,等影片 /images/emoticon/emoticon43.gif

/images/emoticon/emoticon41.gif

我要留言

立即登入留言