terraform archive 是一個 HashiCorp 公司提供的一個 Provider,可以讓使用者在 Terraform 中,將指定的目錄或檔案打包(例如 zip )。

雲端上運行的無伺服器計算服務非常熱門,著名的如 AWS Lambda 、 Azure Functions、GCP Cloud Functions,也常使用 terraform 工具來進行部屬。這時再使用 terraform archive ,方便地把例如 python code 打包成 zip,簡便地部署到服務上。

Continue reading

tar是 Unix 和類 Unix 系統上常用的壓縮工具,名字來自於 tape archive 的縮寫, tar 可以將多個文件或目錄打包成一個檔案。單純 .tar 檔案是沒有壓縮資料的,只是把好多目錄與資料夾打包起來變成一個大檔案而已;如果要有壓縮資料的功能,要使用 .tar.gz 壓縮檔案,是最常見的壓縮檔案格式。

Continue reading

這題是要求 Binary Tree 的 diameter ,要注意一下 diameter 的定義並不等於深度 ! 根據題目中的例子,可了解所謂 diameter 的定義,是兩點之間的最遠距離。雖然 Binary Tree 的 diameter 並不等於深度,但是和深度有非常大的關係,所以解法用 DFS 是比較直觀的想法。(雖然題目難度說是 easy,但我個人覺得應該算初階 medium…)

Continue reading

deep copy 是程式初新手常會有疑問的地方,這邊剛好可以藉由解題來複習指標的概念。另外這題有很巧妙的解法,就是利用 HashMap 來建立原 node 和拷貝 node 之間的映射 ! 也可以使用遞迴的解法,寫起來相當的簡潔。

Continue reading

RUN、CMD 和 ENTRYPOINT 指令都可以用來執行具體的命令。RUN 指令是在 Docker 鏡像構建時把執行結果會記錄到鏡像中;而 CMD 和 ENTYPOINT 指令是在容器啟動時自動執行。

ENTRYPOINT 和 CMD 的區別在於使用 ENTRYPOINT 時, CMD 指令會被作為其默認參數,也可以在啟動容器時通過覆蓋 CMD 指令來輸入參數。

Continue reading

這題為一個設計題,給了一個 Data Stream,希望設計一個 class 能夠支援連續的 operation,並找出該 Stream 目前的中位數。注意 Data Stream 中的 Data 是無序的且可以為負數,所以我們要做的第一件事是讓每一次 data 輸入進來,都要讓其有序。這裡介紹的解法十分巧妙,使用 maxHeap 和 minHeap 來解決問題,這樣中位數的計算便只要看 maxHeap 的最大值和 minHeap 的最小值來判斷。

Continue reading

Author's picture

李昀陽 YunYang Lee

Welcome to my Tech Note. You can read some of the chapters below.

Software Engineer

Taiwan