From 1616ccbabf9f6824ee7ada60ace9b0a8646b4c1c Mon Sep 17 00:00:00 2001 From: Jack Date: Fri, 28 Jun 2024 15:29:13 +0800 Subject: [PATCH] Add 2024 intern --- package.json | 4 +- source/_drafts/dsa-tutorial.md | 688 +++++++++++++++++++++++++++ source/_drafts/summer-intern-2024.md | 56 --- source/_posts/python-tutorial-1.md | 9 +- source/_posts/python-tutorial-3.md | 14 +- source/_posts/python-tutorial-4.md | 9 +- source/_posts/python-tutorial-5.md | 152 +++--- source/_posts/summer-intern-2024.md | 125 +++++ source/img/cover/appier.jpg | Bin 0 -> 209252 bytes 9 files changed, 924 insertions(+), 133 deletions(-) create mode 100644 source/_drafts/dsa-tutorial.md delete mode 100644 source/_drafts/summer-intern-2024.md create mode 100644 source/_posts/summer-intern-2024.md create mode 100644 source/img/cover/appier.jpg diff --git a/package.json b/package.json index a565508..4295282 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,7 @@ "server": "hexo server" }, "hexo": { - "version": "6.3.0" + "version": "7.1.1" }, "dependencies": { "hexo": "^7.1.1", @@ -29,4 +29,4 @@ "hexo-theme-landscape": "^1.0.0", "hexo-wordcount": "^6.0.1" } -} +} \ No newline at end of file diff --git a/source/_drafts/dsa-tutorial.md b/source/_drafts/dsa-tutorial.md new file mode 100644 index 0000000..03e2c47 --- /dev/null +++ b/source/_drafts/dsa-tutorial.md @@ -0,0 +1,688 @@ +--- +title: 資料結構與演算法 +categories: + - +tags: + - +cover: /img/cover/C++.png +date: +--- + +# 演算法與資料結構入門 +本文所有內容與資料皆由本人蒐集與撰寫,轉載請註明出處。 +本篇講義尚未完成。 + +![](https://hackmd.io/_uploads/Sy7FTNHea.png) + +# 入門介紹 +- [甚麼是演算法?](https://jason-chen-1992.weebly.com/home/-whats-algorithm) +- [甚麼是資料結構?](https://hackmd.io/@Aquamay/H1nxBOLcO/https%3A%2F%2Fhackmd.io%2F%40Aquamay%2Frk1C8ni5d) + +來複習一下學習地圖,以臺大資工系必修為例: +![](https://i.imgur.com/Y2AdRO3.png =80%x) +以臺大資管系必修為例: +![](https://i.imgur.com/aC9lfrs.png =70%x) + +而在演算法與資料結構的世界裡面,大概又可以分為以下幾種類別。在我們之後的課程中,會逐漸的介紹每個名詞以及其對應概念: +![image](https://hackmd.io/_uploads/BkmCHf7UR.png) + + + +# 競賽相關 +適合國 / 高中生參加的相關競賽有以下: +- [Bebras 國際運算思維挑戰(簡單)](https://bebras.csie.ntnu.edu.tw/) +- [APCS(個人)](https://apcs.csie.ntnu.edu.tw/) +- [ISSC(團體)](https://issc.csroc.org.tw/) +- [TOI(資訊奧林匹亞,較難)](https://tpmso.org/toi/) + +建議可以向學校老師或相關社團與補習班詢問更多細節。 + +### APCS Practice +- [應試相關資訊](https://apcs.csie.ntnu.edu.tw/index.php/info/) + - 建議每項都要讀過,特別是環境 / 作答系統 / 考場規則 +#### 實作題 +- [2024/06 APCS](https://zerojudge.tw/Problems?tag=2024%E5%B9%B46%E6%9C%88) and [Solution](https://hackmd.io/cn9ndy19RbKHOJKBRx4aEA) +- [2024/01 APCS](https://zerojudge.tw/Problems?tag=2024%E5%B9%B41%E6%9C%88) and [Solution](https://hackmd.io/@bangyewu/SkKxG8Oua) +- [2023/10 APCS](https://zerojudge.tw/Problems?tag=2023%E5%B9%B410%E6%9C%88) and [Solution](https://hackmd.io/@bangyewu/SkxXo4QGa) or [Solution 2](https://dada878.com/blogs/apcs-2023-10-solution) +- [2023/06 APCS](https://zerojudge.tw/Problems?tag=2023%E5%B9%B46%E6%9C%88) and [Solution](https://hackmd.io/@bangyewu/B13lefwMp) +#### 觀念題 +- [APCS 觀念題分析系列](https://hackmd.io/@howkii-studio/apcs_overview/https%3A%2F%2Fhackmd.io%2F%40howkii-studio%2Fapcs_exercise_cs) +- [APCS 觀念題資源分享](https://hackmd.io/@apcser/B1N5GYEto) + +#### 相關資源 +- 推薦:[AP325 - 從 APCS 實作題檢測三級到五級(C++)](https://drive.google.com/file/d/1hX7q3wVKkLuoMhEEm7uuLjq4BuhZAEgn/view?usp=drive_link) + - [AP325(Python)](https://hackmd.io/@bangyewu/Hy2kbYLI6/%2Fg2kqHh5_Q4eQnz-mfNu3Kw) +- [FB Group - APCS 實作題檢測](https://www.facebook.com/groups/359446638362710/) +- [PyAp45 Playlist - Python on APCS 四五級分](https://www.youtube.com/playlist?list=PLpmg1QLbgMuRQXHRkX9iDHyAVIW1D6OJF) +- [How to master DSA](https://blog.algomaster.io/p/how-i-mastered-data-structures-and-algorithms) + +# 排序演算法(Sorting Algorithms) +![image](https://hackmd.io/_uploads/Hk0Xhj8x0.png) + +排序演算法是一種將一組資料按照特定規則重新排列的方法。 + +常見的排序方法有: +- 選擇排序法(Selection Sort) +每次挑最大或最小的,依序移動到對應的位置。 +- 插入排序法(Insertion Sort) +照順序每次拿一個,並插入正確的位置。 +- 氣泡排序法(Bubble Sort) +就像有個氣泡,兩兩比對後留下大的,每次都把最大的帶到最後面。 +- 合併排序法(Merge Sort) +將陣列不斷細分,再將細分後的結果兩兩合併。 +- 快速排序法(Quick Sort) +選定一個 Pivot,將比他小的丟左邊比他大的丟右邊,再針對左右兩部分進行一次相同的事情。 + +練習:試著實作以上五種常見的 Sorting 方法吧! + +> **推薦參考**:[介紹排序演算法的網站](http://notepad.yehyeh.net/Content/Algorithm/Sort/Sort.php) +> **推薦參考**:[寫程式的基本功:排序演算法](https://magiclen.org/sorting-algorithm/) +> 補充:[Python 中的 sorting](https://officeguide.cc/python-sort-sorted-tutorial-examples/)、[C++ 中的 sorting](https://shengyu7697.github.io/std-sort/) +> 補充:[最貼近現實的排序演算法 - Timsort](https://jason18153.medium.com/%E6%9C%80%E8%B2%BC%E8%BF%91%E7%8F%BE%E5%AF%A6%E7%9A%84%E6%8E%92%E5%BA%8F%E6%BC%94%E7%AE%97%E6%B3%95-timsort-a75da75b65a2) + +補充:還有一些很奇怪的排序方法,看了會覺得很傻眼又好笑。如果有興趣可以參考 [10 Forbidden Sorting Algorithms](https://www.youtube.com/watch?v=ktgxMtWMflU) ,舉幾個例子像是: +- Bogo 排序法(Bogo Sort) +一直隨機重新排序,直到剛好符合大小順序。(猴子打字機定理) +- 史達林排序法(Stalin's Sort) +遇到大小順序不對的就直接刪掉。(所以最後的 list 有可能比原本的短) + +# 搜尋演算法(Search Algorithms) +![image](https://hackmd.io/_uploads/HyNn3iIl0.png) + +搜尋演算法是一種用來在資料集中尋找特定項目的方法或步驟。 + +## 適用於未排序或已排序的資料 +### 線性搜尋(Linear Search) +直接一項一項搜尋,直到找到要的東西為止。 +最基本的搜尋方式,時間複雜度為 $O(N)$。 + +## 僅適用於排序的資料 +以下的搜尋演算法,會利用資料**已經排序過**的性質,來加速搜尋的過程。 + +### 二分搜尋(Binary Search) +很重要的搜尋演算法!將資料中間的與目標相比,若目標較大則往右再做一次搜尋,目標較小則往左,直到找到為止,可以參考 [二分搜尋法教學](https://magiclen.org/binary-search/) 與 [二分搜尋法的一些細節](https://medium.com/appworks-school/binary-search-%E9%82%A3%E4%BA%9B%E8%97%8F%E5%9C%A8%E7%B4%B0%E7%AF%80%E8%A3%A1%E7%9A%84%E9%AD%94%E9%AC%BC-%E4%B8%80-%E5%9F%BA%E7%A4%8E%E4%BB%8B%E7%B4%B9-dd2cd804aee1)。 +#### Leetcode: +- [35. Search Insert Position](https://leetcode.com/problems/search-insert-position/) +- [69. Sqrt(x)](https://leetcode.com/problems/sqrtx/) +- [278. First Bad Version](https://leetcode.com/problems/first-bad-version) + +### 指數搜尋(Exponential Search) +與二分搜尋類似,只是使用 2^N 作為搜尋的 index。 +### 插補搜尋(Interpolation Search) +用線性插值的概念,來加速尋找的過程。 + +> **推薦參考**:[寫程式的基本功:搜尋演算法](https://magiclen.org/search-algorithm/) + + +# 時間複雜度(Time Complexity) +時間複雜度是衡量演算法執行效率的一個重要指標,表示隨著輸入規模增加,算法執行所需時間的增長速度。 + +常用的符號有: +- O-Notation:Big-O(Worst Case,最差) +- Θ-Notation:Big-Theta(Average Case,平均) +- Ω−Notation:Big-Omega(Best Case,最佳) + +一般來說,我們最關心的是最差狀況下的時間複雜度(Big-O),關於詳細的數學推導可以參見補充。一些常見的時間複雜度與其例子為: +* $O(1)$:陣列讀取 +* $O(n)$:簡易搜尋 +* $O(log n)$:二分搜尋 +* $O(nlogn)$:合併排序 +* $O(n^2)$:選擇排序 +* $O(2^n)$:費波那契數列(遞迴版本) + +![](https://hackmd.io/_uploads/rk2-JzHlp.png) + + +我們來看看這些例子是如何被計算出來的: +- [初學者學演算法|從時間複雜度認識常見演算法](https://medium.com/appworks-school/%E5%88%9D%E5%AD%B8%E8%80%85%E5%AD%B8%E6%BC%94%E7%AE%97%E6%B3%95-%E5%BE%9E%E6%99%82%E9%96%93%E8%A4%87%E9%9B%9C%E5%BA%A6%E8%AA%8D%E8%AD%98%E5%B8%B8%E8%A6%8B%E6%BC%94%E7%AE%97%E6%B3%95-%E4%B8%80-b46fece65ba5) +- [初學者學演算法|排序法進階:合併排序法](https://medium.com/appworks-school/%E5%88%9D%E5%AD%B8%E8%80%85%E5%AD%B8%E6%BC%94%E7%AE%97%E6%B3%95-%E6%8E%92%E5%BA%8F%E6%B3%95%E9%80%B2%E9%9A%8E-%E5%90%88%E4%BD%B5%E6%8E%92%E5%BA%8F%E6%B3%95-6252651c6f7e) +- [初學者學演算法|從費氏數列認識何謂遞迴](https://medium.com/appworks-school/%E5%88%9D%E5%AD%B8%E8%80%85%E5%AD%B8%E6%BC%94%E7%AE%97%E6%B3%95-%E5%BE%9E%E8%B2%BB%E6%B0%8F%E6%95%B8%E5%88%97%E8%AA%8D%E8%AD%98%E4%BD%95%E8%AC%82%E9%81%9E%E8%BF%B4-dea15d2808a3) + + +> 補充:[複雜度與漸進符號之數學](http://alrightchiu.github.io/SecondRound/complexityasymptotic-notationjian-jin-fu-hao.html) +> 補充:[時間複雜度與空間複雜度](https://jason-chen-1992.weebly.com/home/time-space-complexity) + + +# 資料結構(Data Structure) +資料結構是一種設計、組織、儲存資料的方式,以實現最佳性能和效率。這些結構包含不同形式,像是陣列、鍊結列表、樹、圖等等。選擇適當的資料結構對於解決特定的問題至關重要,不同的資料結構可以用於不同的應用,並且可以極大地影響程序的運行時間和記憶體使用。 + +相關參考: +- [C++ STL 容器(一) - 基本介紹](https://jasonblog.github.io/note/c++/stl_rong_qi_4e0029_-_ji_ben_jie_shao.html) +- [C++ API / STL 整理](https://hackmd.io/@meyr543/BkgMaiV6Y) +- [演算法與資料結構](https://alrightchiu.github.io/SecondRound/mu-lu-yan-suan-fa-yu-zi-liao-jie-gou.html) + +## 陣列(Array) +![](https://hackmd.io/_uploads/SJJ_pSKMa.png) +可隨機存取的一串連續記憶體位址。 +- [陣列 (Array) 簡介](https://notfalse.net/15/array-intro) +> 補充:[List Are Arrays in Python](https://michaeliscoding.com/lists-are-arrays-in-python/) +### Leetcode +- [26. Remove Duplicates from Sorted Array](https://leetcode.com/problems/remove-duplicates-from-sorted-array/) +- [27. Remove Element](https://leetcode.com/problems/remove-element/description/) + +## 鏈結串列(Linked List) +![](https://hackmd.io/_uploads/HkbKTHFG6.png) +元素間彼此串聯在一起,形成一條鍊子的資料結構。 +![image](https://hackmd.io/_uploads/SkxzAOjQp.png) +也可以是上圖雙向連結的形式。 + +- [Linked List:Intro(簡介)](https://alrightchiu.github.io/SecondRound/linked-list-introjian-jie.html) +- [Linked List:新增資料、刪除資料、反轉](https://alrightchiu.github.io/SecondRound/linked-list-xin-zeng-zi-liao-shan-chu-zi-liao-fan-zhuan.html) + +### Leetcode +- [21. Merge Two Sorted Lists](https://leetcode.com/problems/merge-two-sorted-lists/) +- [24. Swap Nodes in Pairs](https://leetcode.com/problems/swap-nodes-in-pairs/) +- [206. Reverse Linked List](https://leetcode.com/problems/reverse-linked-list/) + +## 堆疊(Stack, Last-In-First-Out, LIFO) +![](https://hackmd.io/_uploads/BkdcTSFMp.png) +單向進出,後進先出的資料結構,如同把東西堆疊起來。 +- [Stack: Intro(簡介)](https://alrightchiu.github.io/SecondRound/stack-introjian-jie.html) +- [Stack: 以Array與Linked list實作](https://alrightchiu.github.io/SecondRound/stack-yi-arrayyu-linked-listshi-zuo.html) +- [Special Application: Min Stack](https://alrightchiu.github.io/SecondRound/stack-neng-gou-zai-o1qu-de-zui-xiao-zhi-de-minstack.html) + +## 佇列(Queue, First-In-First-Out, FIFO) +![](https://hackmd.io/_uploads/H1tjpHFM6.png) +單向進出,先進先出的資料結構,如同在排隊一般。 + +- [Queue: Intro(簡介),並以Linked list實作](https://alrightchiu.github.io/SecondRound/queue-introjian-jie-bing-yi-linked-listshi-zuo.html) +- [Queue: 以Array實作Queue](https://alrightchiu.github.io/SecondRound/queue-yi-arrayshi-zuo-queue.html) + +## Stack & Queue in Python: Collections.deque() +Deque(發音類似 Deck)為 Double-Ended Queue 的縮寫,顧名思義,Deque 是一個支援雙向存取的 Queue,也就是說,你可以從頭跟尾插入或移除元素。 + - [官方說明文件](https://docs.python.org/zh-tw/3/library/collections.html#collections.deque) + +```python= +from collections import deque +D = deque([1,2,3]) +D.append(4) +D.appendleft(0) +print(D[2], D) +print(D.pop(), D) +print(D.popleft(), D) +``` +``` +Output: +2 deque([0,1,2,3,4]) +4 deque([0,1,2,3]) +0 deque([1,2,3]) +``` +Q:那他與 Stack 跟 Queue 有甚麼關係呢? +> A: +> Stack: 只使用 D.append() 與 D.pop() 的 deque +> Queue: 只使用 D.append() 與 D.popleft() 的 deque +> +> 其實只要符合 Stack 跟 Queue 的性質都可以。 +> 因此以下使用方式也對,但較不建議使用: +> Stack: 只使用 D.appendleft() 與 D.popleft() 的 deque +> Queue: 只使用 D.appendleft() 與 D.pop() 的 deque + +以下為使用 collections.deque 來實作 stack 與 queue 的例子: +```python= +from collections import deque + +# For Stack, you can only use the following operations +S = deque() +# push from a stack: +S.append(val) +# pop from a stack: +val = S.pop() +# peek from a stack: +top = S[-1] +# check size of a stack: +size = len(S) +# check stack is empty: +isEmpty = (size == 0) + +# ========================================= +# For Queue, you can only use the following operations +Q = deque() +# push from a queue: +Q.append(val) +# pop from a queue: +val = Q.popleft() +# peek from a queue: +top = Q[0] +# check size of a queue: +size = len(Q) +# check queue is empty: +isEmpty = (size == 0) +``` +另外也可以參考 Python 官方對 [將 List 作為 Stack / Queue 使用](https://docs.python.org/zh-tw/3/tutorial/datastructures.html#using-lists-as-stacks) 的說明。 + +介紹完 collections.deque() 以後,讓我們來實際練習一下 Leetcode 的題目吧! + +### Leetcode +#### Stack +- [20. Valid Parentheses](https://leetcode.com/problems/valid-parentheses/) +- [155. Min Stack](https://leetcode.com/problems/min-stack/description/) +- [232. Implement Queue using Stacks](https://leetcode.com/problems/implement-queue-using-stacks/) + +#### Queue +- [225. Implement Stack using Queues](https://leetcode.com/problems/implement-stack-using-queues/) +- [341. Flatten Nested List Iterator](https://leetcode.com/problems/flatten-nested-list-iterator/) +- [387. First Unique Character in a String](https://leetcode.com/problems/first-unique-character-in-a-string/) + + +## 樹(Tree) +![](https://hackmd.io/_uploads/S13npBFMp.png) +基本單位為 Node,且只有一個 Node 是 Root(無人指向的 Node),且不存在任何 Cycle。每個 Node 可以指向多個 Child。 +- [Tree(樹): Intro(簡介)](https://alrightchiu.github.io/SecondRound/treeshu-introjian-jie.html) + +### 二元樹(Binary Tree) +![image](https://hackmd.io/_uploads/SJQuAds7a.png) +當樹中的每個 Node 都只有兩個 Child,即為 Binary Tree。 + +- [Binary Tree: Intro(簡介)](https://alrightchiu.github.io/SecondRound/binary-tree-introjian-jie.html) +- [Binary Tree: Traversal(尋訪)](https://alrightchiu.github.io/SecondRound/binary-tree-traversalxun-fang.html) + 以上面的 Binary Tree 為例: + - Pre-Order Traversal: ABDECFG + - In-Order Traversal: DBEAFCG + - Post-Order Traversal: DEBFGCA + ![image](https://hackmd.io/_uploads/rJEw81ajp.png) +> 延伸閱讀:[Binary Tree: 建立一棵Binary Tree](https://alrightchiu.github.io/SecondRound/binary-tree-jian-li-yi-ke-binary-tree.html) + + +### 二元搜尋樹(Binary Search Tree) +![image](https://hackmd.io/_uploads/rJ5d1tom6.png) +若一個二元樹中,所有 Node 都滿足 Node.left.value < Node.value < Node.right.value,就稱為二元搜尋樹。二元搜尋樹有良好的排序特質,可以幫助我們找到想要的資料。 +- [Binary Search Tree: Intro(簡介)](https://alrightchiu.github.io/SecondRound/binary-search-tree-introjian-jie.html) +- [Binary Search Tree: Search(搜尋資料)、Insert(新增資料)](https://alrightchiu.github.io/SecondRound/binary-search-tree-searchsou-xun-zi-liao-insertxin-zeng-zi-liao.html) +- [Binary Search Tree: Sort(排序)、Delete(刪除資料)](https://alrightchiu.github.io/SecondRound/binary-search-tree-sortpai-xu-deleteshan-chu-zi-liao.html) +> 注意:在 Binary Search Tree 上做 In-Order Traversal,即可得到排序好的資料! + +### 進階 - 紅黑樹(Red Black Tree) +紅黑樹是一種進階的 BST(Binary Search Tree),透過將每個節點塗上紅色或黑色,並在新增或刪除資料時進行適當的結構調整(旋轉子樹),可以維持 BST 的高度不會相差太多,進而在搜尋時能有較好的效率。細節太過複雜這邊暫時跳過,之後有時間 or 有興趣再回來講。 + +![image](https://hackmd.io/_uploads/HyclMKj7p.png) +- [Red Black Tree: Intro(簡介)](https://alrightchiu.github.io/SecondRound/red-black-tree-introjian-jie.html) +> 延伸閱讀: +> - [Red Black Tree: Rotation(旋轉)](https://alrightchiu.github.io/SecondRound/red-black-tree-rotationxuan-zhuan.html) +> - [Red Black Tree: Insert(新增資料)與Fixup(修正)](https://alrightchiu.github.io/SecondRound/red-black-tree-insertxin-zeng-zi-liao-yu-fixupxiu-zheng.html) +> - [Red Black Tree: Delete(刪除資料)與Fixup(修正)](https://alrightchiu.github.io/SecondRound/red-black-tree-deleteshan-chu-zi-liao-yu-fixupxiu-zheng.html) + +### 進階 - AVL 樹(AVL Tree) +![image](https://hackmd.io/_uploads/r1GAdTXt6.png) +AVL Tree 是一種 Binary search tree 實做方式,大部分的實做方式與 BST 一樣,差異在於 AVL tree 在過程中會透過計算並調整樹的結構來讓樹維持平衡,而不會導致 BST 過度傾斜(不平衡),與紅黑樹的目標類似。細節太過複雜這邊暫時跳過,之後有時間 or 有興趣再回來講。 + +> 延伸閱讀:[資料結構與演算法:AVL Tree](https://josephjsf2.github.io/data/structure/and/algorithm/2019/06/22/avl-tree.html) + +### Leetcode +#### Basic - Traversal & Search +Please try to use both recursion and stack/queue to solve problem 102 and 144. (Hint: For 102(Level-Order) you should use **Queue**, for 144(Pre-Order) you should use **Stack**) +- [94. Binary Tree Inorder Traversal](https://leetcode.com/problems/binary-tree-inorder-traversal/description/) +- [102. Binary Tree Level Order Traversal](https://leetcode.com/problems/binary-tree-level-order-traversal/description/) +- [144. Binary Tree Preorder Traversal](https://leetcode.com/problems/binary-tree-preorder-traversal/description/) +- [145. Binary Tree Postorder Traversal](https://leetcode.com/problems/binary-tree-postorder-traversal/description/) +- [700. Search in A Binary Search Tree](https://leetcode.com/problems/search-in-a-binary-search-tree/description/) + +#### Applications +- [100. Same Tree](https://leetcode.com/problems/same-tree/description/) +- [226. Invert Binary Tree](https://leetcode.com/problems/invert-binary-tree/description/) +- [530. Minimum Absolute Difference in BST](https://leetcode.com/problems/minimum-absolute-difference-in-bst/description/) +- [1026. Maximum Difference Between Node and Ancestor](https://leetcode.com/problems/maximum-difference-between-node-and-ancestor/description/) +- [1609. Even Odd Tree](https://leetcode.com/problems/even-odd-tree/description) + +#### Tools +- [BT Visualizer](https://eniac00.github.io/btv/) + +## 圖(Graph) +![](https://hackmd.io/_uploads/S1v-AHFM6.png) +圖比樹的限制更少,給定一群節點與相連的邊,即可稱為圖。邊可以分為有向與無向,節點之間的連結並沒有限制,也因此圖並不像樹有 root、parent、siblings、height 等等屬性,且有可能會有 cycle 的出現。 + +### Graph & Tree 的比較 +![](https://hackmd.io/_uploads/HkvhyNtf6.png) +Tree 可以被看成一種特殊的 Graph,就像 Binary Tree 是一種特殊的 Tree 一樣。 + +### Graph 的表示法 +![image](https://hackmd.io/_uploads/H1otPi8gA.png) + +- [Graph: Intro(簡介)](https://alrightchiu.github.io/SecondRound/graph-introjian-jie.html) + +### Graph 的搜尋 +![image](https://hackmd.io/_uploads/r1Ef-7Pnp.png) +最常見、也最常使用的搜尋方法有兩種:BFS 與 DFS。兩者的差異在於搜尋的優先順序不同,並且分別可以使用 Queue 與 Stack 來實作。 + +#### 廣度優先搜尋(Breadth First Search, BFS) +- [Breadth First Search or BFS for a Graph](https://www.geeksforgeeks.org/breadth-first-search-or-bfs-for-a-graph/) + +#### 深度優先搜尋(Depth First Search, DFS) +- [Depth First Search or DFS for a Graph](https://www.geeksforgeeks.org/depth-first-search-or-dfs-for-a-graph/) + +#### 那 DFS 與 BFS 可以應用在 Tree 上嗎? +因為 Tree 也是 Graph 的一種,所以當然可以,而且非常常用! +> 延伸閱讀:[DFS、BFS 與 Pre-Order、In-Order、Post-Order、Level-Order 的關係](https://stackoverflow.com/a/57598470/15894431) + +### Leetcode +- [133. Clone Graph](https://leetcode.com/problems/clone-graph/description/) +- [797. All Paths From Source to Target](https://leetcode.com/problems/all-paths-from-source-to-target/description/) +- [841. Keys and Rooms](https://leetcode.com/problems/keys-and-rooms/) +- [997. Find the Town Judge](https://leetcode.com/problems/find-the-town-judge/description/) + +--- + +#### 在圖中找環(Cycle) +上面的兩個例子中,都使用 `visited` 來紀錄該節點是否被拜訪過。因此,在**無向圖**中,若我們下一個要拜訪的節點的 `visited` 為 `True`,那我們就可以知道該圖中有環的存在。那在**有向圖**中呢?以下圖來說: +![image](https://hackmd.io/_uploads/rkSj6pq0a.png) +若我們在右邊的有向圖 b 中,用相同的 DFS 來尋找是否有環,假設第一次尋訪的路徑為 (1,2,4,5),而第二次尋訪退回到 2 並往下尋訪 (3,4),我們這時候會發現 `visited[4] == True`,並且判定該圖有環,但實際上是沒有的。那我們該怎麼做呢? + +在往下看之前,先自己想想看喔! + +答案:使用三個不同的值來表示每個節點不同的尋訪狀態(黑、白、灰)。黑色代表已經完成搜尋,白色代表還沒搜尋過,灰色代表正在這條 path 上搜尋,等搜尋完成後就會改為黑色。因此,若我們搜尋時遇到灰色節點,就可以知道該圖存在 cycle! +```python= +# Determine if a directed graph is acyclic +# True: Acyclic; False: Cyclic +graph = ... # adjacency list representation +N = len(graph) +visited = [0] * N +def checkNoCycle(node): + if visited[node] == -1: # gray, currently visiting + return False + elif visited[node] == 1: # black, done visiting + return True + else: # white, not visited yet (visited[node] == 0) + visited[node] = -1 + for neighbor in graph[node]: + if not dfs(neighbor): + return False + visited[node] = 1 + # print(node) + return True +``` + +> 補充:[The purpose of grey node in graph depth-first search](https://cs.stackexchange.com/questions/9676/the-purpose-of-grey-node-in-graph-depth-first-search) + +### 連通分量(Connected Components) +![image](https://hackmd.io/_uploads/r1EGVkc-A.png) +![ConnectedComponent4](https://hackmd.io/_uploads/BkStEJ9WR.png) + + +- [Connected Component - 演算法筆記](https://web.ntnu.edu.tw/~algo/ConnectedComponent.html) +- [Strongly Connected Components - Kosaraju 演算法](https://www.cnblogs.com/RioTian/p/14026585.html) + +> 補充:[Connected Components in an Undirected Graph](https://www.geeksforgeeks.org/connected-components-in-an-undirected-graph/) +> 補充:[Strongly Connected Components](https://www.geeksforgeeks.org/strongly-connected-components/) +> 補充:[Tarjan 演算法與 Kosaraju 演算法](https://hackmd.io/@erichung0906/HkjZBH_IK) + +### Leetcode +- [207. Course Schedule](https://leetcode.com/problems/course-schedule/description/) +- [1971. Find if Path Exists in Graph](https://leetcode.com/problems/find-if-path-exists-in-graph/description/) + + +> 延伸閱讀: +> - [Graph: Breadth-First Search(BFS,廣度優先搜尋)](https://alrightchiu.github.io/SecondRound/graph-breadth-first-searchbfsguang-du-you-xian-sou-xun.html) +> - [Graph: Depth-First Search(DFS,深度優先搜尋)](https://alrightchiu.github.io/SecondRound/graph-depth-first-searchdfsshen-du-you-xian-sou-xun.html) +> - [Graph: 利用DFS和BFS尋找Connected Component](https://alrightchiu.github.io/SecondRound/graph-li-yong-dfshe-bfsxun-zhao-connected-component.html) +> - [Graph: 利用DFS尋找Strongly Connected Component(SCC)](https://alrightchiu.github.io/SecondRound/graph-li-yong-dfsxun-zhao-strongly-connected-componentscc.html) +> - [Graph: 利用DFS尋找DAG的Topological Sort(拓撲排序)](https://alrightchiu.github.io/SecondRound/graph-li-yong-dfsxun-zhao-dagde-topological-sorttuo-pu-pai-xu.html) + +## 矩陣(Matrix) +![image](https://hackmd.io/_uploads/SyxulaZA6.png) + +在介紹 Graph 的表示方法時,我們提到了兩種不同的表示方式,分別是鄰接串列(Adjacency List)與鄰接矩陣(Adjacency Matrix)。不過其實,矩陣本身也可以被當作一種資料結構來使用,舉凡像是迷宮、地圖等等具有 2D 性質的資料型態,都可以使用矩陣來表示。 + +Matrix 的相關操作其實都與 Graph 差不多,不外乎就是在 Matrix 中進行搜尋或遍歷,但因為我們可以以 $O(1)$ 的複雜度,直接取用 Matrix 內部中的任一元素(`matrix[row][col]`),所以 Matrix 在某些應用上具有較為快速的優勢。那接著就讓我們直接實戰演練吧! +### Leetcode +- [200. Number of Islands](https://leetcode.com/problems/number-of-islands/description/) +- [994. Rotting Oranges](https://leetcode.com/problems/rotting-oranges/description/) +- [1351. Count Negative Numbers in a Sorted Matrix](https://leetcode.com/problems/count-negative-numbers-in-a-sorted-matrix/description/) + +## 堆積(Heap) +![](https://hackmd.io/_uploads/BJqGCStzT.png) + +### 堆積排序法(Heap Sort) +- [[演算法(Algorithm)] 堆積排序法(Heap Sort)](https://notepad.yehyeh.net/Content/Algorithm/Sort/Heap/Heap.php) + +對陣列做 Heapify 變成 Max Heap,再不斷把最大值往後擺。 +> 練習:試著實作 Heap Sort 吧! + +## 優先佇列(Priority Queue) +![image](https://hackmd.io/_uploads/S1CWOylZ0.png) + +- [Priority Queue:Intro(簡介)](https://alrightchiu.github.io/SecondRound/priority-queueintrojian-jie.html) +- [Priority Queue:Binary Heap](https://alrightchiu.github.io/SecondRound/priority-queuebinary-heap.html) + +### Stack / Queue v.s. Priority Queue? +Stack 與 Queue 其實可以被視作特殊狀況的 Priority Queue: +- Stack:加入 Priority Queue 的 Priority 是嚴格遞增的 + - 因此最後加入的元素 Priority 最高,會先被丟出 Stack +- Queue:加入 Priority Queue 的 Priority 是嚴格遞減的 + - 因此最先加入的元素 Priority 最高,會先被丟出 Queue + + +### Priority Queue v.s. Heap? +- Priority Queue:一種**抽象資料類別**,著重的點是描述這個資料類別應該具有甚麼性質與操作方法,不直接討論實作方法。 +- Heap:一種**資料結構**,著重的點在以特定的結構儲存資料。 + +因為他們具有類似的性質,所以用 Heap 的結構來實作 Priority Queue 這個資料類別,可以說是非常適合,也因此乍看之下他們好像是一樣的東西。但兩者概念上有些微不同,亦可以用其他方式來實做 Priority Queue。 + +> 補充:[Difference between priority queue and a heap](https://stackoverflow.com/a/18993313/15894431) +> 補充:[What's the difference between heapq and PriorityQueue in python?](https://stackoverflow.com/questions/36991716/whats-the-difference-between-heapq-and-priorityqueue-in-python) + +## Heap / Priority Queue in Python: heapq +- [Python heapq](https://docs.python.org/zh-tw/3.10/library/heapq.html) +```python= +import heapq +k = 3 +H = [9,7,5,3,1] +heapq.heapify(H) +heapq.heappush(H,2) +element = heapq.heappop(H) +element = heapq.heappushpop(H,2) +klargest = heapq.nlargest(k, H) +ksmallest = heapq.nsmallest(k, H) +``` + +### Leetcode +- [703. Kth Largest Element in a Stream](https://leetcode.com/problems/kth-largest-element-in-a-stream/description/) +- [1046. Last Stone Weight](https://leetcode.com/problems/last-stone-weight/description/) +- [1642. Furthest Building You Can Reach](https://leetcode.com/problems/furthest-building-you-can-reach/description/) + +## 雜湊表(Hash Table) +![](https://hackmd.io/_uploads/r1cQCHKMa.png) + +### 雜湊函數的性質 +雜湊函式是一種把輸入數據轉換成固定長度的字符串(雜湊值)的工具。它有以下特點: +* 固定長度輸出:無論輸入數據有多長,輸出都是固定長度。 +* 無法回推:從雜湊值無法反推出原始輸入(即單向性),保證了數據的不可逆性。 +* 抗碰撞性:難以找到兩個不同的輸入有相同的雜湊值。 +* 快速計算:能快速生成雜湊值。 + +![image](https://hackmd.io/_uploads/ByQ3G5S7R.png) +![image](https://hackmd.io/_uploads/S1vaz9S7A.png) +![image](https://hackmd.io/_uploads/ByaTfqrXA.png) + +- [[資料結構] 雜湊 (Hash)](https://ithelp.ithome.com.tw/articles/10208884) + +> Images are from [什麼是Hash Function? 有什麼特性及用途?](https://homuchen.com/posts/what-is-hash-function-its-properties-and-usages/) + +### 雜湊函數的應用 +* 資料完整性驗證:確保收到的資料是完整的,或確保文件未被篡改。 +* 密碼儲存:儲存密碼的雜湊值,而不是明文密碼,提高安全性。常見的加密方式如 MD5、SHA-256 等等,若有興趣可以再研究密碼學。 +* 資料結構:用於實現雜湊表,能夠快速存取資料。使用雜湊函數的常見資料結構包含集合(Set)、字典(Dictionary)等等。 +* 數位簽章:保護資料完整性和驗證身份。 + +> 補充:[雜湊函數 - 維基百科](https://zh.wikipedia.org/zh-tw/%E6%95%A3%E5%88%97%E5%87%BD%E6%95%B8) + +### Leetcode +- [49. Group Anagrams](https://leetcode.com/problems/group-anagrams/description/) +- [242. Valid Anagram](https://leetcode.com/problems/valid-anagram/description/) +- [387. First Unique Character in a String](https://leetcode.com/problems/first-unique-character-in-a-string/description/) +- [2441. Largest Positive Integer That Exists With Its Negative](https://leetcode.com/problems/largest-positive-integer-that-exists-with-its-negative/description/) + +## 並查集(Disjoint Set / Union Find) +![image](https://hackmd.io/_uploads/ry305yeWA.png) +- [Union-Find / Disjoint-Set – 陪你刷題](https://haogroot.com/2021/01/29/union_find-leetcode/) + +一個包含路徑壓縮,並以 rank (size of set) 來作為 union 依據的 Union-Find 資料結構,大概會是如下的形式: + +```python= +class UF: + def __init__(self, N): + self.parent = list(range(N)) + self.size = [1] * N + self.count = N + + def union(self, x, y): + rootX = self.find(x) + rootY = self.find(y) + if rootX != rootY: + self.count -= 1 + if self.size[rootX] < self.size[rootY]: + self.parent[rootX] = rootY + self.size[rootY] += self.size[rootX] + else: + self.parent[rootY] = rootX + self.size[rootX] += self.size[rootY] + + def find(self, x): + while self.parent[x] != x: + self.parent[x] = self.parent[self.parent[x]] + x = self.parent[x] + return x +``` + +### Leetcode +- [547. Number of Provinces](https://leetcode.com/problems/number-of-provinces/description/) +- [1971. Find if Path Exists in Graph](https://leetcode.com/problems/find-if-path-exists-in-graph/description/) + +## 字典樹(Prefix Tree / Trie) +![image](https://hackmd.io/_uploads/BJdBwzXIR.png) +- [Trie(字典樹)](https://hackmd.io/@TienYi/trie) +### Leetcode + +# 其他常見的演算法(Algorithms) +演算法(Algorithm)是在有限的步驟之內,提供明確的法則,求出問題正確答案的程序。它可以是一種方法、法則或者程序,讓資料可按照預先設計的方式處理。 + +- [認識演算法](https://hackmd.io/@howkii-studio/Bkf-2DQiw/https%3A%2F%2Fhackmd.io%2F%40howkii-studio%2Falgorithm) +- 推薦補充閱讀:[演算法筆記](https://web.ntnu.edu.tw/~algo/) + - [Algorithm Design](https://web.ntnu.edu.tw/~algo/AlgorithmDesign.html) + +## 動態規劃(Dynamic Programming) +![image](https://hackmd.io/_uploads/SkqV4HbSR.png) + +**Dynamic Programming = Divide-and-Conquer + Memoization** + +動態規劃是一種解決問題的方法,它將大問題拆解成小問題(Divide-and-Conquer),並記錄每個小問題的解答(Memoization),以便後續使用。這樣做能夠節省計算時間,讓我們更有效地解決問題,針對某些「透過前面答案來計算後面答案的問題」特別有用。 + +- [演算法筆記:DP](https://web.ntnu.edu.tw/~algo/DynamicProgramming.html) + +### Recursion v.s. Dynamic Programming? +我們來看看這題(Leetcode [509. Fibonacci Number](https://leetcode.com/problems/fibonacci-number/description/)): +- 費波納契數列 + 給定輸入整數n,輸出第 n 項費波納契數列 + 舉例:n = 8,輸出為 21 (1 1 2 3 5 8 13 21) + +Recursion 寫法: +```python= +# Recursion +def fibonacci_recursive(n): + if n <= 0: + return 0 + elif n == 1: + return 1 + else: + return fibonacci_recursive(n - 1) + fibonacci_recursive(n - 2) +``` + +Dynamic Programming 寫法: +```python= +# Dynamic Programming +def fibonacci_dp(n): + if n <= 0: + return 0 + elif n == 1: + return 1 + else: + fib = [0, 1] + for i in range(2, n + 1): + fib.append(fib[i - 1] + fib[i - 2]) + return fib[n] +``` + +#### 時間複雜度分析 +接著我們來測量一下他們的速度差異: + +```python= +import timeit +print("遞迴方法耗時: %.6f 秒"%(timeit.timeit(lambda: fibonacci_recursive(30),number=1))) +print("動態規劃方法耗時: %.6f 秒"%(timeit.timeit(lambda: fibonacci_dp(30),number=1))) +``` +``` +Output: +遞迴方法耗時: 0.502652 秒 +動態規劃方法耗時: 0.000011 秒 +``` + +為什麼會差這麼多呢?我們來分析看看兩種方法的時間複雜度: + +- 遞迴版本 +時間複雜度:$O(2^n)$。對於每個 fibonacci_recursive(n),它會呼叫 fibonacci_recursive(n-1) 和 fibonacci_recursive(n-2),這種重複計算會導致呼叫函數的次數呈指數級數增長,因此時間複雜度為 $O(2^n)$。 + + +- 動態規劃版本 +時間複雜度:$O(n)$。它只需要計算一次每個費氏數列的值,並將結果存入列表中。迴圈從 2 執行到 n,所以時間複雜度為 $O(n)$。 + + +對於較小的 n,遞迴可能更簡單易懂,並且兩者的速度可能相差不大。但是當 n 較大時,遞迴所需的時間會嚴重惡化,相較之下動態規劃會有更好的效能表現。 + +看到上述兩者的時間複雜度差異之大,是不是發現動態規劃的強大了? + + + +### Leetcode +- [62. Unique Paths](https://leetcode.com/problems/unique-paths/description/) +- [64. Minimum Path Sum](https://leetcode.com/problems/minimum-path-sum/description/) +- [70. Climbing Stairs](https://leetcode.com/problems/climbing-stairs/description/) +- [198. House Robber](https://leetcode.com/problems/house-robber/description/) + + +> 延伸閱讀:[演算法筆記:Knapsack Problem](https://web.ntnu.edu.tw/~algo/KnapsackProblem.html) + +## KMP 演算法 +![image](https://hackmd.io/_uploads/ry2SjfO4C.png) + +KMP演算法是一種用於字串搜尋的高效方法。透過建立部分配對表,可以快速定位搜尋字串中的可能配對位置,減少不必要的重複比較,從而加速搜尋過程。 + +- [KMP algorithm,從自學到放棄 (1)](https://medium.com/@c.s.fangyolk/kmp-%E6%BC%94%E7%AE%97%E6%B3%95-%E5%BE%9E%E8%87%AA%E5%AD%B8%E5%88%B0%E6%94%BE%E6%A3%84-1-7f71e65839a0) +- [KMP algorithm,從自學到放棄 (2)](https://medium.com/@c.s.fangyolk/kmp-%E6%BC%94%E7%AE%97%E6%B3%95-%E5%BE%9E%E8%87%AA%E5%AD%B8%E5%88%B0%E6%94%BE%E6%A3%84-2-94dda22f80b2) +### Leetcode +- [28. Find the Index of the First Occurrence in a String](https://leetcode.com/problems/find-the-index-of-the-first-occurrence-in-a-string/description/) +## Backtracking +## Divide-and-Conquer +### Leetcode +- [108. Convert Sorted Array to Binary Search Tree](https://leetcode.com/problems/convert-sorted-array-to-binary-search-tree/description/) +## Brute Force +## Greedy Method + +## Graph 進階議題 +### 最短路徑(Shortest Path) +- [Shortest Path:Intro(簡介)](https://alrightchiu.github.io/SecondRound/shortest-pathintrojian-jie.html) +### 戴克斯特拉演算法(Dijkstra's Algorithm) +- [基礎演算法系列 — Graph 資料結構與Dijkstra’s Algorithm](https://medium.com/%E6%8A%80%E8%A1%93%E7%AD%86%E8%A8%98/%E5%9F%BA%E7%A4%8E%E6%BC%94%E7%AE%97%E6%B3%95%E7%B3%BB%E5%88%97-graph-%E8%B3%87%E6%96%99%E7%B5%90%E6%A7%8B%E8%88%87dijkstras-algorithm-6134f62c1fc2) + +### Leetcode +- [743. Network Delay Time](https://leetcode.com/problems/network-delay-time/description/) +- [787. Cheapest Flights Within K Stops](https://leetcode.com/problems/cheapest-flights-within-k-stops/description/) +--- + +### 生成樹(Spanning Tree) +![image](https://hackmd.io/_uploads/S1zbFo8eC.png) + + +- [演算法筆記:Spanning Tree](https://web.ntnu.edu.tw/~algo/SpanningTree.html) + +--- + +### 有向無環圖(Directed Acyclic Graph)與拓樸排序(Topological Sorting) +![image](https://hackmd.io/_uploads/B1txFj8gR.png) + + +- [演算法筆記:DAG](https://web.ntnu.edu.tw/~algo/DirectedAcyclicGraph.html) + +### Leetcode +- [210. Course Schedule II](https://leetcode.com/problems/course-schedule-ii/description/) + +# 附錄:Complexity Cheat Sheet +![](https://hackmd.io/_uploads/BkfMZStGp.png) +![](https://hackmd.io/_uploads/BJ50lHYGp.png) \ No newline at end of file diff --git a/source/_drafts/summer-intern-2024.md b/source/_drafts/summer-intern-2024.md deleted file mode 100644 index 348407d..0000000 --- a/source/_drafts/summer-intern-2024.md +++ /dev/null @@ -1,56 +0,0 @@ ---- -title: 2024 年科技業暑期實習面試心得 -categories: - - 工作紀錄 -tags: - - Internship - - Interview -cover: /img/cover/tsmc.jpg -date: 2024-01-29 20:57:07 ---- - -一年又過去啦~又到了要找暑期實習的時間了,如果還沒看過去年的暑期實習面試心得文可以 [點我](https://jackchen890311.github.io/2023/05/24/summer-intern-2023/) 觀看。今年我的策略一樣是找大公司,因為順利的話畢業也許可以直接拿 Return Offer,就不用再找工作了,另外可能主要也會找 SWE、AI & ML 相關的職缺為主。 - -# 面試紀錄 -以下粗略地按照投遞時間排序。 -- 投遞履歷:2 家公司 -- 面試邀請:1 家公司 -- Offer Get:0 家公司 - -## Google - SWE Intern -### 第一關(1/29 & 1/30)- Online Coding Interview x 2 -一月初投的,中間兩三周都沒收到任何消息,還以為涼去,結果到快月底了才收到面試邀請,還好我一月都算有在加減刷題,話雖如此但面試前幾天還是緊張到靠北。題外話,我原本選一中一英,但莫名其妙變成二中,不知道該開心還是該難過,因為我也不知道到底語言會不會影響評分 @@。 - -以下因為 Google 有要求不能洩漏題目,所以我不會講到題目細節,只會提到大概的方向。其實考題完全不難,是很基本的資料結構(Tree, Matrix, Array 等等),暖身題也都只是基本的遍歷,看來真的是很考驗你基本功夠不夠穩,以及你夠不夠有自信。 - -#### 1/29 - Removal Sequence of a Tree - - - -題目:給定一個 Tree (Binary or N-ary),找到一個符合不同特定條件的 removal sequence - -其實很仁慈~第一題我算蠻快就解出來了,就是基本的 Traversal 而已。但第二題不知為啥我卡了蠻久,就是沒想到用 node height 就可以輕鬆解決,而且我好像還把 height 跟 depth 的概念講混了,我先哭死。不過後來在面試官提點之後,有在時間內做出來,但 complexity analysis 我講得很不確定,基本功真的不夠紮實嗚嗚嗚,感覺這種題目高手來應該是秒殺。 - -#### 1/30 - Matrix Traversal - - - -題目:給定一個 matrix,判斷是否能從起點走到終點,以及符合某條件下的最佳路徑 - -也是很仁慈,但我覺得我也沒有發揮好,第一題 Traversal 的部分寫完了被問有沒有辦法加速,結果我想了半天還沒有加速到,還浪費一堆時間(其實我寫的應該對了,但面試官一這樣問我就開始自我懷疑 @@,所以壓縮到第二題的時間)。第二題也是一開始沒確認好細節,所以稍微拖到,最後第二題就沒寫完,但概念都有講清楚,就是 Traverse 兩次加一些小細節這樣。面完感覺高手也是可以輕鬆秒殺的,我還卡成這樣大概是沒希望 QQ。 - - - -## Yahoo - Research Scientist Intern -這個職位剛好實驗室的學長前年有待過,他強烈推薦我去,因為他說風氣很不錯,加上可以自由研究你想研究的東西,甚至也許會對碩論有幫助,總之就是個不錯的職位這樣。也是一月初投,但他們好像一月底才會統一開始審這樣。 - -# 結語 \ No newline at end of file diff --git a/source/_posts/python-tutorial-1.md b/source/_posts/python-tutorial-1.md index f0acdd0..5d7d089 100644 --- a/source/_posts/python-tutorial-1.md +++ b/source/_posts/python-tutorial-1.md @@ -96,11 +96,10 @@ The loop ends. #### 變數(Variable) -- 我們會需要變數來存放數值運算的結果 -- [基本命名規則](https://ithelp.ithome.com.tw/articles/10217188) +- 我們會需要變數來存放數值運算的結果,使用 `=` 可以將數值指派給變數,可以參考 [基本命名規則](https://ithelp.ithome.com.tw/articles/10217188) +- 若重複指派給相同名稱的變數,原本的值會被覆蓋掉! - `a = 10` 意為指派 10 給 a(右邊的值丟給左邊的容器) - `a == 10` 意為比較 a 是否等於 10(為邏輯判斷式) - ``` >>> width = 20 >>> height = 5 * 9 @@ -128,8 +127,8 @@ The loop ends. - 字串 string - `"This is a string"` - 布林值 Boolean - `True` (Non-zero) / `False` (Zero) - > 補充:String 是由 Character 組成的陣列,為了便於操作在 Python 內多使用 String - > Python 在讀入長度為一的字母時,為了方便也會以 String 的方式儲存 + > 補充:String 是由 Character 組成的陣列,其他語言有可能會將 String 與 Character 當作兩種資料類別,但在 Python 中沒有 Character 的概念,因此長度為一的字母在 Python 中也會被當成字串來做處理。 + #### 型別轉換(Casting) ``` >>> str(3) diff --git a/source/_posts/python-tutorial-3.md b/source/_posts/python-tutorial-3.md index a48668c..ad8f6a2 100644 --- a/source/_posts/python-tutorial-3.md +++ b/source/_posts/python-tutorial-3.md @@ -85,17 +85,17 @@ The loop ends. - 示範: ```python= -while 4 > 3: # A Condidtion always True +while 4 > 3: # A always true condidtion print('Loop') ``` #### Range() -- 幫助我們創造一個範圍的函數 -- 用法: - - `range(n)` 會回傳 `[0,1,2,...n-1]` 的清單 - - `range(m,n)` 會回傳 `[m,m+1,m+2,...n-1]` 的清單 - - `range(m,n,k)` 會回傳 `[m,m+k,m+2k,...]` 的清單,最後一個元素不超過 n-1 -- 一般狀況使用第一個就好 +上面的例子中有使用到 range(),而 range() 是能夠幫助我們創造一個範圍的函數,其用法為: +- `range(n)` 會回傳 `[0,1,2,...n-1]` 的清單 +- `range(m,n)` 會回傳 `[m,m+1,m+2,...n-1]` 的清單 +- `range(m,n,k)` 會回傳 `[m,m+k,m+2k,...]` 的清單,最後一個元素不超過 n-1 + +一般的情況下使用第一個就好。 > 備註:回傳型態其實不完全是清單,但我們先把它當成清單用就好 > 可以透過 `list()` 將其轉為清單 diff --git a/source/_posts/python-tutorial-4.md b/source/_posts/python-tutorial-4.md index 90c6a22..d9e6ca8 100644 --- a/source/_posts/python-tutorial-4.md +++ b/source/_posts/python-tutorial-4.md @@ -48,6 +48,9 @@ date: 2023-03-23 20:54:38 >>> print(l + l) [1, 1.0, 100, "test", 1, 1.0, 100, "test"] + +>>> print(l * 3) +[1, 1.0, 100, "test", 1, 1.0, 100, "test", 1, 1.0, 100, "test"] ``` - Traverse a list: @@ -103,9 +106,9 @@ Output: # Correct Copy aList = [1, 2, 3] # Three different ways to copy a list (Shallow) -anotherList = list(a) -anotherList = a[:] -anotherList = a.copy() +anotherList = list(aList) +anotherList = aList[:] +anotherList = aList.copy() anotherList[0] = 5 print(aList) diff --git a/source/_posts/python-tutorial-5.md b/source/_posts/python-tutorial-5.md index 8bcd7d8..feddac4 100644 --- a/source/_posts/python-tutorial-5.md +++ b/source/_posts/python-tutorial-5.md @@ -17,23 +17,44 @@ date: 2023-03-23 20:54:42 我們也可以透過特定語法來定義自己的函數,透過函數可以幫我們達成「模組化」,省去重複的 code 同時提供更多彈性來執行類似的動作。 -- 一個函數包含名稱、函數本體、輸入(Input)與輸出(Output) - - 後兩者又叫做參數(Parameters)、回傳值(Return Values) - - 參數與引數(Arguments)雖然都指函數輸入值,但有些微的差異,可以參考[這裡](https://notfalse.net/6/arg-vs-param) -- 函數的使用: - - 用名稱來使用(或呼叫)函數,用 `def` 來定義函數 - - 函數的參數可以自行命名(如下例的 n),也可以傳入多個參數或給定預設值 - - 把要執行的程式碼包在函數本體中 - - 使用 `return` 來控制函數的結束點,並將回傳值放在後面(可放多個用逗號隔開) - - 若沒有 `return` 則函數跑完所有 code 一樣會結束並回傳 `None` - - 函數結束後會回到主程式,繼續執行後面的程式 -- 例子: +一個函數包含名稱、本體、輸入(Input)與輸出(Output),後兩者又叫做參數(Parameters)與回傳值(Return Values)。有時我們也會在函數最一開始的地方加入註解,來說明函數的使用方式以及參數 / 回傳值類型。 +![image](https://hackmd.io/_uploads/ByAuqF8kR.png) + +以下圖為例,輸入是蘋果,輸出是切半的蘋果,函數 `h` 的作用是把蘋果切半。 +![image](https://hackmd.io/_uploads/HJDXscDyA.png) + + +#### 名稱 +- 用關鍵字 `def` 來宣告函數,名稱接在 `def` 後面 +- 名稱通常會取與函數作用相關,便於使用者理解函數功能 +- 使用函數時,用其名稱來呼叫函數 + +#### 本體 +- 把要執行的程式碼包在函數本體中 +- 有時會在本體前面加上註解,用以說明函數功能 + - 說明最好包含:輸入、輸出、作用 + - 因為函數沒有限制變數的類別,所以最好在說明中講清楚 + +#### 輸入(參數) +- **參數的作用是提供資料給函數操作** +- 函數的參數可以自行命名(如下例的 n) +- 可以傳入多個參數,用逗號隔開 +- 可以給定預設值(如下例的 n = 5) + +#### 輸出(回傳值) +- **回傳值的作用是把結果回傳給使用函數的人** +- 使用 `return` 來控制函數的結束點,並將回傳值放在後面 +- 若沒有 `return` 則會自動在最後加上 `return None` +- 可放回傳多個結果,用逗號隔開 +- 函數結束後會回到主程式,繼續執行後面的程式 + +以下是一個在 python 中的實際例子,輸入是一個數字 `n` ,輸出是一個清單 `alist` ,函數 `get_1_to_n` 的作用是獲取 1 ~ n 的清單。 ```python= def get_1_to_n(n = 5): - print('Getting a list range from 1 to',n, end=': ') - print(list(range(1,n+1))) - return list(range(1,n+1)) + print('Getting a list range from 1 to',n) + alist = list(range(1,n+1)) + return alist x = get_1_to_n(10) # or get_1_to_n(n = 10) print('X = ',x) @@ -43,41 +64,48 @@ print('Y = ',y) ``` ``` Output: -Getting a list range from 1 to 10: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] +Getting a list range from 1 to 10 X = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] ~~~~~~~~~~ -Getting a list range from 1 to 5: [1, 2, 3, 4, 5] +Getting a list range from 1 to 5 Y = [1, 2, 3, 4, 5] ``` +> 補充:[Python yield的用法詳解](https://medium.com/ai%E5%8F%8D%E6%96%97%E5%9F%8E/python-yield%E7%9A%84%E7%94%A8%E6%B3%95%E8%A9%B3%E8%A7%A3-%E8%BD%89%E9%8C%84-52f539b67bdf) +> 補充:[參數(Parameters)與引數(Arguments)的差異](https://notfalse.net/6/arg-vs-param) #### 變數範圍(Scope of Variable) -變數依據生命週期的不同,分為全域(Global)變數與區域(Local)變數 -- 區域變數 +變數依據生命週期的不同,分為全域變數與區域變數。 +- 區域變數(Local Variable) - 定義在函數內的變數稱為區域變數 - 只能在函數內使用,函數結束後變數也會跟著消失 -- 全域變數 +- 全域變數(Global Variable) - 定義在函數外的變數稱為全域變數 - 所有地方(包含函數內)都可以使用,直到程式結束執行才會消失 - 若函數內宣告與全域變數同名的變數,則會被當作是區域變數,對其進行的操作不影響全域變數 -- 如果想在函數內修改全域變數,可以使用 `global var` 來進行(但不推薦,容易混亂) - 通常若我們需要拿到函數內的某個變數,我們會直接使用 `return var` - ```python= -def multiply_5(n): - scale = 5 - return n * scale - -# print(scale) will cause error -scale = 3 -result = multiply_5(2) -print(result) +scale = 3 # Global + +def multiply(num): + return num * scale + +def multiply_5(num): + scale = 5 # Local + return num * scale + +print(scale) +print(multiply(2)) +print(multiply_5(2)) print(scale) ``` ``` Output: +3 +6 10 3 ``` +> 補充:在函數內修改全域變數與上一層變數的方法:[Global & Nonlocal](https://ktinglee.github.io/LearningPython100days(6)_global_and_nonlocal/) #### 可變物件(Mutable Object)與不可變物件(Immutable Object) 在 Python 中,不同資料類別又可以其性質分為可變物件與不可變物件。 @@ -92,35 +120,27 @@ Output: ```python= # Mutable Object alist = [1,2,3] -alist[1] = 100 -print(alist) -``` -``` -Output: -[1,100,3] -``` +alist = [4,5,6] # Okay +alist[1] = 100 # Okay -```python= # Immutable Object astring = 'string' -astring[3] = 'A' +astring = 'STRING' # okay +astring[1] = 'A' # TypeError: 'str' object does not support item assignment ``` -``` -Output: -TypeError: 'str' object does not support item assignment -``` - 接著我們來看看記憶體位址的變化: ```python= # Let's take a look on the addresses of these objects # id() is a function help finding address of a variable +# Mutable Object alist = [1,2,3] print(id(alist)) alist[1] = 100 print(id(alist)) print('=====') +# Immutable Object astring = 'string' print(id(astring)) astring = 'STRING' @@ -137,12 +157,17 @@ Output: > 參考 [什麼是 Immutable & Mutable objects](https://www.maxlist.xyz/2021/01/26/python-immutable-mutable-objects/) -> *關於 set 可不可變其實有點爭議,在這裡先當作他是可變的,參考[這裡](https://stackoverflow.com/questions/14193438/are-python-sets-mutable) - +> \*關於 set 可不可變其實有點[爭議](https://stackoverflow.com/questions/14193438/are-python-sets-mutable),在這裡先當作他是可變的 +> #### Pass by Assignment - Example Illustration 此處我們「不會」深入講當傳參數時發生了什麼事情,因為牽扯到一些記憶體跟參照等等的概念,我們會用幾個例子來說明何謂 Python 的 Pass by Assignment。 -Python 中函數依據傳入參數的類別不同,會有不同的行為。**當傳入參數可變物件時,若未經重新指派,而是在函數裡直接修改參數,則會原始變數的值也會一同被修改(若經重新指派則視為全新的變數,即不影響原始變數);而當傳入參數為不可變物件時,任何對參數的操作都不影響原始變數(除非使用全域變數方式修改)**。 +Python 中函數依據傳入參數的類別不同,會有不同的行為。 +- 當傳入參數可變物件時: + - **若未經重新指派,而是在函數裡直接修改參數,則會原始變數的值也會一同被修改** + - **若經重新指派,則視為全新的變數,原始變數不會被影響** +- 當傳入參數為不可變物件時: + - **任何對參數的操作都不影響原始變數(除非使用全域變數方式修改)** 聽起來很複雜對吧?我們直接用例子來看會比較清楚一些: @@ -178,20 +203,26 @@ string #### 遞迴(Recursion) - An example on factorial +遞迴是一種概念,指的是「在函數在執行過程中呼叫自己」的方法。這種技術對於解決某些複雜問題特別有用,例如處理樹狀結構、遞迴搜尋、組合數學等。以下是遞迴的基本概念和特性: +1. 基礎案例(Base Case):遞迴函數必須有一個基礎案例,也就是遞迴呼叫的終止條件。當滿足這個條件時,遞迴將不再進行,從而避免無限迴圈。 +2. 遞迴案例(Recursive Case):如果沒有滿足基礎案例的條件,函數就會進入遞迴案例。在這個案例中,函數會呼叫一個較小的子問題版本。 +3. 問題簡化:遞迴案例通常將原始問題簡化為一個較小的子問題,直到滿足基礎案例為止。 ```python= -def factorial(n): - if n == 0: +def find_fact(n): + if n == 1: # base case return 1 - else: - recurse = factorial(n-1) + else: # recursive case + recurse = find_fact(n-1) result = n * recurse return result ``` +![image](https://hackmd.io/_uploads/S1gBbY810.png) -關於函數還有很多可以講:Recursion 的設計方法、Call by Reference、Call by Value... -但有些東西太進階了,我們先停在這裡,以後有機會再細講。 > 補充:[遞迴深度的上限](https://clay-atlas.com/blog/2020/09/20/python-cn-recursionerror-maximum-recursion-depth-exceeded/) +關於函數還有很多可以講:Recursion 的設計方法、Call by Reference、Call by Value...。但有些東西太進階了,我們先停在這裡,以後有機會或是遇到的時候再細講。 + + ### 其他常見資料結構 #### 元組(Tuple) @@ -199,7 +230,6 @@ def factorial(n): - 不同於 list 使用 `[]` ,tuple 使用 `()` - 一個元素的 tuple 須以 `(item, )` 表示 - 因屬不可變物件,故僅能以重新指派的方式修改其值,如下例: - ``` >>> mytuple = (11, 22, 33) >>> saved = mytuple @@ -210,12 +240,11 @@ def factorial(n): (11, 22, 33) ``` - zip() - ```python= num = [1,2,3] char = ['a','b','c'] CHAR = ['A','B','C'] -for i in zip(num,char,CHAR): +for i in zip(num, char, CHAR): print(i) ``` ``` @@ -230,22 +259,23 @@ Output: - 字典的組成包含鍵(Keys,不可變)與值(Values,可變) - 使用 Key 來尋找對應的 Value,以上述例子來說即為使用字尋找讀音 - Key 跟 Value 可以是任何資料類別,也可以不用一樣 - - 字典是無序的(在 collection 這個 library 中有提供有序字典) + - 字典是無序的(在 `collections` 這個 library 中有提供有序字典) - 若查找不存在的 key 則會報錯,可以使用 `in` 或 `dict.get()` 來檢查 ```python= mydict = dict() # or mydict = {} print("Here is an empty dictionary:", mydict) +# Add new pair in dictionary mydict[1] = 'one' mydict[2] = 'two' mydict[3] = 'three' -print(mydict) -print("2 is corresponding to:",mydict[2]) +print("Dictionary now looks like: ", mydict) +print("2 is corresponding to:", mydict[2]) # Access value ``` ``` Output: Here is an empty dictionary: {} -{1: 'one', 2: 'two', 3: 'three'} +Dictionary now looks like: {1: 'one', 2: 'two', 3: 'three'} 2 is corresponding to: two ``` @@ -291,7 +321,9 @@ Difference(B-A): {44, 55} Symmetric difference: {11, 44, 22, 55} ``` -> 特別注意 [運算元優先順序](https://june.monster/python-101-operators-and-priority/) ! +![image](https://hackmd.io/_uploads/BkvMrFNM0.png) + +> 補充:特別注意 [運算元優先順序](https://june.monster/python-101-operators-and-priority/)! #### 統整 | 類別 | Tuple | List | Dict | Set | diff --git a/source/_posts/summer-intern-2024.md b/source/_posts/summer-intern-2024.md new file mode 100644 index 0000000..267a083 --- /dev/null +++ b/source/_posts/summer-intern-2024.md @@ -0,0 +1,125 @@ +--- +title: 2024 年科技業暑期實習面試心得(Google, Gamania, Appier) +categories: + - 工作紀錄 +tags: + - Internship + - Interview +cover: /img/cover/appier.jpg +date: 2024-06-28 15:57:07 +--- + +一年又過去啦~又到了要找暑期實習的時間了,如果還沒看過去年的暑期實習面試心得文可以 [點我](https://jackchen890311.github.io/2023/05/24/summer-intern-2023/) 觀看。今年我的策略一樣是只找大公司 & 有興趣的職位,因為順利的話畢業也許可以直接拿 Return Offer,就不用再找工作了。另外我主要是找暑期,以 SWE、AI & ML 相關的職缺為主。(雖然我最後去的是長期實習 XD) + +# 面試紀錄 +- 投遞履歷:18 家公司 +- 面試邀請:3 家公司 +- Offer Get:1 家公司 + +最後去 Appier 做 Machine Learning Scientist Intern,我也只有拿到這個 Offer。 + +## Google - SWE Intern +### 第一關(1/29 & 1/30)- Online Coding Interview x 2 +一月初投的,中間兩三周都沒收到任何消息,還以為涼去,結果到快月底了才收到面試邀請,還好我一月都算有在加減刷題,話雖如此但面試前幾天還是緊張到靠北。題外話,我原本選一中一英,但莫名其妙變成二中,不知道該開心還是該難過,因為我也不知道到底語言會不會影響評分 @@。 + +以下因為 Google 有要求不能洩漏題目,所以我不會講到題目細節,只會提到大概的方向。其實考題完全不難,是很基本的資料結構(Tree, Matrix, Array 等等),暖身題也都只是基本的遍歷,看來真的是很考驗你基本功夠不夠穩,以及你夠不夠有自信。 + +#### Removal Sequence of a Tree(1/29) + + + +題目:給定一個 Tree (Binary or N-ary),找到一個符合不同特定條件的 Removal Sequence + +其實很仁慈~第一題我算蠻快就解出來了,就是基本的 Traversal 而已。但第二題不知為啥我卡了蠻久,就是沒想到用 Node Height 就可以輕鬆解決,而且我好像還把 Height 跟 Depth 的概念講混了,我先哭死。不過後來在面試官提點之後,有在時間內做出來,但 Complexity Analysis 我講得很不確定,基本功真的不夠紮實嗚嗚嗚,感覺這種題目高手來應該是秒殺。 + +#### Matrix Traversal(1/30) + + + +題目:給定一個 Matrix,判斷是否能從起點走到終點,以及符合某條件下的最佳路徑 + +也是很仁慈,但我覺得我也沒有發揮好,第一題 Traversal 的部分寫完了被問有沒有辦法加速,結果我想了半天還沒有加速到,還浪費一堆時間(其實我寫的應該對了,但面試官一這樣問我就開始自我懷疑 @@,所以壓縮到第二題的時間)。第二題也是一開始沒確認好細節,所以稍微拖到,最後第二題就沒寫完,但概念都有講清楚,就是 Traverse 兩次加一些小細節這樣。面完感覺高手也是可以輕鬆秒殺的,我還卡成這樣大概是沒希望。 + +結果:過年後感謝信,哭了。後續有寄信去問面試表現,得到的回覆是:「其中一關很棒,但另一關在一開始對算法的使用不夠熟悉,如果不用提示會更好,所以沒有繼續往下進行。」人資人還是蠻不錯的,還有鼓勵我繼續加油,不過說實話我不知道是哪場不夠好(我猜是第一場),只好以後繼續加油增進基礎功。 + + + +後面兩個都是後來才紀錄的,所以可能不會到很詳細。 + +## Gamania - AI Researcher +其實原本沒有發現遊戲橘子有開缺,會投這個主要是實驗室的學長介紹,就給他履歷請他幫我內推了。遊戲橘子內部業務除了遊戲之外,也有跨足媒體、娛樂等等產業,因此他們的 AI Team 主要就是在分析這些資料,跟其遊戲本業倒不太相關。 + +### 第一關(4/26) - Team +第一關主要是個人經歷關以及公司介紹,沒有技術關。面試我的看起來是未來的同事,前面花十多分鐘講完我的經歷,他只追問了一點點,就開始介紹公司了。我當下就有種感覺是根本都沒問到重點或細節,就直接結束了,不太確定是對我沒興趣還是怎樣,但後來幾天又收到二面邀請,想說也許還是有機會。 + +### 第二關(5/3) - HR +他們的 HR 看起來蠻幹練的,看起來對自己的工作很熟悉,講解的也都很清楚。基本上這關就跟平常遇到的 HR 關差不多,問一些個人特質、經歷等等,所以也沒有太多好說的。最後 HR 還說如果有問題可以用 LinkedIn 聯絡他,當下覺得蠻有機會。 + +結果:很遺憾的,收到了感謝信。後來去問當初內推我的學長,他說雖然我的個人特質看起來不錯,但他們想找經歷更相關的,可能我在這塊的經驗相對較少吧,有點可惜。題外話,遊戲橘子的公司在內湖,離我家大概就是 5-10 分鐘車程,我每次家教完回家也都會經過,超近! + + +## Appier - ML Engineer Scientist +4/30 突然收到面試邀請,蠻驚喜的,因為這個時間已經有點晚了,不過他也不是暑期實習就是了。我其實也有投 Appier 的暑期實習,甚至在面這個職位中途收到感謝信,害我以為這個職位也告吹,結果仔細看發感謝信的是暑期職位,不是這個缺。雖然面試過程拖了快兩個月,但很幸運最後也拿到 Offer,Onboard Date 也差不多就是七月初,算是沒有偏離我原本的目標太遠(除了開學後要繼續工作以外,希望我不會忙到翻掉嗚嗚)。 + +### 第一關(5/7) - Tech +第一關應該是由同事來面,也是我認為最扎實的一關。整個面試過程大約快一小時,最一開始是兩題 Coding Test,主要是實作兩個常見的 Loss 與他們的 Gradient,會給你他們的公式,並且不限語言或使用套件,只有說算 Gradient 的時候不要 Call Loss.backward()。Coding 部分還算友善,接著是一題模擬題,要你設計一個 Ranking Algorithm,會給你相關的 User Logs,方法上沒有限制。這題我講了幾個不同的方式,他叫我挑一個講細節一點,所以我就把最近在看的 Contrastive Learning 做延伸,應用在他的題目裡。這部分問蠻細的,會問你 Loss 設計,還有延伸情境題,好在我認為我講的還可以,講完之後今天面試差不多就到這邊。 + +### 第二關(5/14) - Manager +後來收到二面邀請,這次應該是團隊主管。聊什麼內容我有點忘記了,但印象中大概是圍繞在個人相關經歷,針對他有興趣的去問細節,好像還有問最近研究方向之類的,總之都是在純聊天,好在後來也順利進到下一關。 + +### 第三關(5/20) - CTO +實習要面到 CTO 其實我蠻意外的,不過他排的時間只有不到半小時,所以我猜想應該就是簡單聊天?實際到當天面試,CTO 開場第一句話就問我說:「你是許老師的學生喔?」,讓我有點驚喜,後來才知道原來他也跟我同個 Lab,世界真小。後來跟他聊了幾句之後,便針對我目前的研究來問,問了一些技術細節,差不多就結束了。結束前想說機會難得,問他對於目前市場的看法,就再跟他多聊了十多分鐘。CTO 人蠻好的,很願意跟我分享他的看法,聊天過程也很愉快。 + +### 第四關(6/22) - CEO +原本想說面到 CTO,面的過程看起來也沒啥問題,應該是十拿九穩等著收 Offer 了。加上 HR 過幾天後又跟我約電話,我跟學長討論後,他說他覺得應該是要談 offer 細節,但殊不知他是要跟我約四面 CEO 的時間。四面啊!!!我這輩子還沒面過四面,更何況只是實習,不過看來 Appier 似乎近期作風都是這樣,後來也有聽說其他實習或正職也要面到 CEO。 + +另外,大家應該可以發現三面跟四面之間隔了一個月,那是因為 CEO 忙到只有週末的少數可以面試,加上他們人資或祕書又很拖,週五晚上才在問週六早上能不能面試,也沒有先確定我所有的 Availablity,總之一路來回拉扯了快一個月,好不容易才敲定一個時間面試,為此我還特地請了半小時家教的假,真的是十分折騰,還好人資都還有在幫忙我處理,也是很感謝他。 + +CEO 基本上也是純聊天而已,就跟他聊聊個人經歷、以往實習內容、最近研究、為什麼想來 Appier 這樣。過程中可以看出他思路還蠻快的,但還是會很有耐心聽你講完。聊完沒問題後,他口頭跟我說到這個階段會有 Offer 了,也讓我總算放下了心中的大石頭,然後就速速的結束的此次面試,整個時長不到十五分鐘,看來他應該是真的很忙。 + +結果:Offer Get(6/25)。Onboard 日期訂在兩週後(7/8),直到六月底才拿到 Offer,也算是一種極限操作了,還好投這麼多間,總算有一間順利的走完全部過程。 + + +## 其他投遞公司與職位 +因為丟的公司很多,加上也很多沒有後續,所以就不一間一間細講了,但還是把我有投的公司放在這裡給大家參考。 + +- Yahoo: Research Scientist Intern & Data Science Intern +- Microsoft: SWE Intern +- Wistron: SWE / AI Intern +- Realtek: SWE / FWE / AI Intern +- PicCollage: ML Intern +- Dell: SWE Intern +- MediaTek: SWE / FWE / AI Intern +- Trend: SWE & Test Intern +- Quid: ML Intern +- NVIDIA: Applied Simulation Research Intern +- Garmin: DS / DE / SWE Intern +- Qualcomm: ML / Web Intern +- Acer: AI Intern +- Cadence: SWE Intern +- Synopsys: SWE Intern + +整理完發現我也投太多,然後也一堆沒有收到後續,好難過 QQ。其實我原本今年不打算寫這篇文章的,因為如果全都沒上好像有點丟臉,還好最後有拿到一個 Offer,也因此才有這篇文章的產出。 + +再一個題外話,去年在 TSMC 實習的單位主管 T (詳情請看[這篇](https://jackchen890311.github.io/2023/09/11/intern-at-TSMC/)文章)有問我要不要回去他底下再當一次實習生,這次是在竹科,直接在他底下實習。雖然稍微有點心動,但我沒有很想在一間公司實習兩次,加上我對該部門的工作內容已經大概都知道了,實習的目的比較像是探索不同的職位 / 公司與自己的契合度,所以我後來就婉拒了他的邀約。 + + +# 結語 +每次要找工作都很痛苦呀...近幾年景氣不是太好,海投的結果常常是杳無音訊,希望最後拿到 Offer 的這個實習職位可以順利轉正,這樣我畢業就不用再重找工作了。也謝謝你閱讀到這邊,希望我少少的幾個面試經驗對你有幫助,也祝我們在未來找工作的路上都順順利利!若還有什麼問題,都歡迎再聯絡我詢問喔~ \ No newline at end of file diff --git a/source/img/cover/appier.jpg b/source/img/cover/appier.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b0bda361b27d12af2815a183e80fed2d73a470e9 GIT binary patch literal 209252 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 literal 0 HcmV?d00001