---
# System prepended metadata

title: 課程第 1 次作業心得筆記

---

# 課程第 1 次作業心得筆記

> 2021 年「資訊科技產業專案設計」
> 課程暱稱：杜紫騰／Belly

## LeetCode 9 - Palindrome Number

此題一開始其實便想到的轉換成字串，然後用兩個 cursor 分別指向字串的頭尾。時間複雜度當然只有 `O(n)`，兩端 traverse 到中間就結束了。

可以改進的部分是可以想想「不轉換成字串」，單單用 Number 來處理的話要怎麼做（這也是 LeetCode 上的補充，叫我們試試看）。

### 單用數字解的思路

目前尚未實做，但一開始的想法是對數字作取得頭尾的運算。

取得尾部相對簡單，取 10 的餘數即可；取頭的話，還待思考。

## LeetCode 58 - Length of Last Word

這題還算是蠻快就做出來了，關於字串的操作我還相對熟悉。

可以增進的部分大概是語言的熟悉程度吧，剛開始有嘗試用 trim function 看看能否直接把多餘 space 給抹去，但是 string 的 function 還不算非常熟悉，並沒有以 JavaScript 原生 function 的方法解掉此題。

## LeetCode 77 - Combinations

這一題花了相當久的時間，最後解出來的方法感覺起來沒有到很漂亮，甚至到最後是「試」出來的。

自己總結一下花了很久時間的原因大概是

1. 對排列組合的原理已經太久沒碰了，可以推算出「排列」的公式，但「組合」的公式臨時推不出來，還得去翻文章
2. 對於遞迴及用樹的結構描述，也太久沒碰顯的陌生

反省一下，對於基本的資料結構和演算法，熟悉程度還是不太夠。

## 影片製作

影片的錄製及剪接對我來說都算是蠻新鮮的，也因此花了一些時間研究在 Mac 上如何做到。

這次用的是 QuickTime Player 做螢幕錄影及一般錄影，加上 iMovie 剪接。

其實兩個工具都沒有到很方便，一來是剛開始碰不太熟悉，二來是稍微熟悉後發現蠻多應該有的功能卻沒有的感覺，例如更有效的將影片分段分類等等。

所以只能用比較陽春的方式剪接，也沒有加上太多過場效果。

## 心得

這次以旁聽的身份來重新學習，雖說已經出社會一段時間，但仍感以前曾經學過的東西已經不少還給老師了😂，所以打算重新挑戰一下自己。

第一份作業就真是相當的硬！一次要寫三題、拍六份影片，但也因此碰了一些新東西，複習了很久沒做的 LeetCode，其實還是相當有趣的（吧？）
