把問題條列化 - 自主練習


Q1. 生活流程條列式,每一條只能做一個動作
吃晚餐拿湯匙還是筷子?

1. 吃飯、喝湯用湯匙
2. 吃麵用筷子
3. 如果今天平均氣溫超過 25 度,就表示天氣很熱
4. 除非天氣很熱,否則每天都會喝湯
5. 如果是假日,晚餐吃麵
6. 如果不是假日,晚餐吃飯

Q2. 給你一個亂數的數列,1, 8, 9, 2, 5 ,4,把這些數字由小排到大
之前練習排序都可以直接用 sort() 解決所以也沒多想過為什麼。拿出紙筆開始思考雖然寫出來了卻不知道該怎麼列出來逐步化,我的想法是:

1. 第一位跟第二位比,大的放後一位所以第一次結果一樣
2. 第二位跟第三位比,大的放後一位,結果不變
3. 第三位跟第四位比,大的放後一位,得 1, 8, 2, 9, 5, 4
4. 第四位跟第五位比,大的放後一位,得 1, 8, 2, 5, 9, 4
5. 第五位跟第六位比,大的放後一位,得 1, 8, 2, 5, 4, 9
6. 重複 6 次

雖然列出來了但總覺得還可以再細分,後來爬文看到 一起用 JavaScript 來複習經典排序法吧! 覺得裡面提到的泡沫法跟自己想做的類似,而且拆解的蠻詳細的,看完有比較清楚的感覺,雖然之後提到的 "時間複雜度" 還是看不太懂。

#Lidemy #MTR05 #數列排序 #心得筆記







你可能感興趣的文章

mac m1晶片踩坑記

mac m1晶片踩坑記

create react app 專案 git push 推不上 remote repo

create react app 專案 git push 推不上 remote repo

Angular 入門教學 - 系列文目錄

Angular 入門教學 - 系列文目錄






留言討論