演算法原來那麼貼近生活

更新 發佈閱讀 2 分鐘
座號是每一個學生擁有過的一個數字,但你有想過座號是怎麼排序的嗎?

座號的第一位通常都是姓氏筆畫最少的人如:丁、王等,那如果今天有兩個人都姓王的時候,會怎麼排序呢,當然最簡單的方式就是再比第二個字,那如果今天剛好三個字都一樣的話就會講求到資料的穩定性。

那這時候就要提到資料結構中的Array、Linked list了。


Array 需要連續的記憶體空間:
優點:時間複雜度為 O(1),容易閱讀、查找。
缺點:記憶體需事先宣告,可能佔了用不到的記憶體空間、更新刪減資料非常麻煩Insertion時間複雜度:O(n) Deletion O(n)。

Linked list 不需要連續的記憶體空間:
優點: Insertion O(1) Deletion O(1),更新刪減資料非常方便

比較:

raw-image

演算法評估
Time complexity 時間複雜度
Space complexity 空間複雜度
stable 穩定




留言
avatar-img
留言分享你的想法!
avatar-img
黎羊Leon的沙龍
0會員
5內容數
黎羊Leon的沙龍的其他內容
2022/05/06
我是一名非本科系商科學生,甚至說是商科也不太算正確,只好說自己是一個懂得服務的大學生,但我現在只想透過程式碼來服務大眾。於是我開始經歷我的轉職路程,有些好笑、艱辛、荒謬、有趣、不合邏輯等像是門外漢一般的很多觀念,但努力補足。期許自己有一天可以對你說,「你好!我是一名軟體工程師,很高興認識你!」。
Thumbnail
2022/05/06
我是一名非本科系商科學生,甚至說是商科也不太算正確,只好說自己是一個懂得服務的大學生,但我現在只想透過程式碼來服務大眾。於是我開始經歷我的轉職路程,有些好笑、艱辛、荒謬、有趣、不合邏輯等像是門外漢一般的很多觀念,但努力補足。期許自己有一天可以對你說,「你好!我是一名軟體工程師,很高興認識你!」。
Thumbnail
2022/03/09
從身邊最小的事物開始吧! 這是我學習完基礎JavaScript後第一個做成的Project,應該是每個前端都一定會做過的project,但對於自學的我非常有挑戰性,我需要訓練自己在短時間內熟悉JS event並且運用他做出我的第一個搭配大量JS程式碼的網頁作品。
Thumbnail
2022/03/09
從身邊最小的事物開始吧! 這是我學習完基礎JavaScript後第一個做成的Project,應該是每個前端都一定會做過的project,但對於自學的我非常有挑戰性,我需要訓練自己在短時間內熟悉JS event並且運用他做出我的第一個搭配大量JS程式碼的網頁作品。
Thumbnail
2022/03/02
教到了JS event,非常實用的一堂課程,開始進入監聽階段,可以跟使用者互動,也慢慢建立UX的概念,讓我可以開始自行設計動態網頁,並且優化了第二個靜態網頁,加入了滾動變化的效果。
Thumbnail
2022/03/02
教到了JS event,非常實用的一堂課程,開始進入監聽階段,可以跟使用者互動,也慢慢建立UX的概念,讓我可以開始自行設計動態網頁,並且優化了第二個靜態網頁,加入了滾動變化的效果。
Thumbnail
看更多
你可能也想看
Thumbnail
每次都很煩惱交換禮物要送什麼嗎?這次分享五款千元以下的質感好物,有香氛、海綿寶寶積木、質感可蒸可微波便當盒、吉卜力造型毛巾和實用包款,讓你輕鬆挑選聖誕節禮物💝
Thumbnail
每次都很煩惱交換禮物要送什麼嗎?這次分享五款千元以下的質感好物,有香氛、海綿寶寶積木、質感可蒸可微波便當盒、吉卜力造型毛巾和實用包款,讓你輕鬆挑選聖誕節禮物💝
Thumbnail
嗨大家!最近過得好嗎?我好久沒發文了!😀 正在進行一個月的歐洲旅行,這次橫跨三個國家,也發生不少有趣的事,接下來也會陸續整理發佈~ 今天想分享的是旅行中必備的好物,我也在旅途中親自進行實測, 希望透過這篇的購買清單,幫助到即將要規劃旅行的你:)
Thumbnail
嗨大家!最近過得好嗎?我好久沒發文了!😀 正在進行一個月的歐洲旅行,這次橫跨三個國家,也發生不少有趣的事,接下來也會陸續整理發佈~ 今天想分享的是旅行中必備的好物,我也在旅途中親自進行實測, 希望透過這篇的購買清單,幫助到即將要規劃旅行的你:)
Thumbnail
大家都知道要補充膠原蛋白,但步入中年後的我,肌膚的變化不只是「流失變快」,連狀態也開始慢慢改變。 後來才明白,原來膠原蛋白的補充不只要「吃對」,更要「吃對時間」。 就像肌膚保養會分成早晚程序,膠原的補充其實也需要「分時」進行,才能更貼近需求,效果也更好。 BEAUTY CLUB 讓我養成了「早
Thumbnail
大家都知道要補充膠原蛋白,但步入中年後的我,肌膚的變化不只是「流失變快」,連狀態也開始慢慢改變。 後來才明白,原來膠原蛋白的補充不只要「吃對」,更要「吃對時間」。 就像肌膚保養會分成早晚程序,膠原的補充其實也需要「分時」進行,才能更貼近需求,效果也更好。 BEAUTY CLUB 讓我養成了「早
Thumbnail
發現每天固定一個小動作,肌膚整體狀態真的會更穩定,照鏡子的心情也跟著好起來。 早上我習慣吃一包 TIMESEAL 早安膠原蛋白,粉末狀、很好入口,使用小分子技術,搭配維生素C與專利原料 ( 雙胜肽膠原、PANMOL® NADH)。對我來說,就是先把一天的彈潤感打好底,也讓整天狀態更有精神。 晚
Thumbnail
發現每天固定一個小動作,肌膚整體狀態真的會更穩定,照鏡子的心情也跟著好起來。 早上我習慣吃一包 TIMESEAL 早安膠原蛋白,粉末狀、很好入口,使用小分子技術,搭配維生素C與專利原料 ( 雙胜肽膠原、PANMOL® NADH)。對我來說,就是先把一天的彈潤感打好底,也讓整天狀態更有精神。 晚
Thumbnail
快速排序法是一種高效的排序演算法,本文圖解說明其運作原理,並包含時間複雜度分析及程式碼實作範例。
Thumbnail
快速排序法是一種高效的排序演算法,本文圖解說明其運作原理,並包含時間複雜度分析及程式碼實作範例。
Thumbnail
電通行銷傳播集團發布《2025年媒體趨勢報告:影響力之年》,深入剖析2025年媒體產業的轉型脈 動。隨著媒體生態快速變革,我們正進入由演算法主導的新時代,使媒體變得更加精準、可直接購 買且可追蹤成效。
Thumbnail
電通行銷傳播集團發布《2025年媒體趨勢報告:影響力之年》,深入剖析2025年媒體產業的轉型脈 動。隨著媒體生態快速變革,我們正進入由演算法主導的新時代,使媒體變得更加精準、可直接購 買且可追蹤成效。
Thumbnail
從GPT-o1的進步到人類社會分裂的潛在風險,AI的角色日益重要,並可能成為新的權力中心。本文探討哈拉瑞的《連結》中提到的資訊網路連結演化帶來的重大變化,尤其是AI在商業界的顛覆性影響,如AI對社會結構、資訊流動及權力分配的潛在影響,警示我們要注意科技巨頭的壟斷風險以及避免重蹈覆轍的可能性。
Thumbnail
從GPT-o1的進步到人類社會分裂的潛在風險,AI的角色日益重要,並可能成為新的權力中心。本文探討哈拉瑞的《連結》中提到的資訊網路連結演化帶來的重大變化,尤其是AI在商業界的顛覆性影響,如AI對社會結構、資訊流動及權力分配的潛在影響,警示我們要注意科技巨頭的壟斷風險以及避免重蹈覆轍的可能性。
Thumbnail
本文介紹了選擇排序演算法的基本邏輯與實作過程,透過範例分析陣列排序的交換步驟,以及相關的程式碼範例,幫助讀者理解選擇排序的時間與空間複雜度。選擇排序是一個簡單易懂的演算法,對於初學者來說是學習排序演算法的良好基礎。
Thumbnail
本文介紹了選擇排序演算法的基本邏輯與實作過程,透過範例分析陣列排序的交換步驟,以及相關的程式碼範例,幫助讀者理解選擇排序的時間與空間複雜度。選擇排序是一個簡單易懂的演算法,對於初學者來說是學習排序演算法的良好基礎。
Thumbnail
題目敘述 Kth Distinct String in an Array 給定一個輸入陣列arr 和 參數k 請返回第k個出現恰好一次的陣列元素。
Thumbnail
題目敘述 Kth Distinct String in an Array 給定一個輸入陣列arr 和 參數k 請返回第k個出現恰好一次的陣列元素。
Thumbnail
給定一個輸入陣列,計算最長遞增子序列的總數。本題和Longest Common Subsequence相似,需要設定一個計數器,記錄最長遞增子序列的數量。透過DP模型的化簡方式來解決問題。時間複雜度為O(n^2),空間複雜度為O(n)。主要使用回頭看的技巧,找出比較小的元素去延伸遞增子序列的長度。
Thumbnail
給定一個輸入陣列,計算最長遞增子序列的總數。本題和Longest Common Subsequence相似,需要設定一個計數器,記錄最長遞增子序列的數量。透過DP模型的化簡方式來解決問題。時間複雜度為O(n^2),空間複雜度為O(n)。主要使用回頭看的技巧,找出比較小的元素去延伸遞增子序列的長度。
Thumbnail
本文章討論如何使用動態規劃和回頭查看技巧來計算最長遞增子序列的長度,並提供了相關的測試案例和範例。本文還包括了詳細的演算法和程式碼示例,以及時間和空間複雜度的分析。
Thumbnail
本文章討論如何使用動態規劃和回頭查看技巧來計算最長遞增子序列的長度,並提供了相關的測試案例和範例。本文還包括了詳細的演算法和程式碼示例,以及時間和空間複雜度的分析。
Thumbnail
給定一個輸入非負整樹陣列nums,請找出k值,使得陣列中恰好有k個元素大於等於 k。如果無解,回傳-1。尋找k值的方法包括排序法和二分搜尋法,時間複雜度都為O(n log n),空間複雜度為O(1)。關鍵知識點是當解空間具有遞增或遞減的性質時,可以用二分搜尋法加快搜尋效率。
Thumbnail
給定一個輸入非負整樹陣列nums,請找出k值,使得陣列中恰好有k個元素大於等於 k。如果無解,回傳-1。尋找k值的方法包括排序法和二分搜尋法,時間複雜度都為O(n log n),空間複雜度為O(1)。關鍵知識點是當解空間具有遞增或遞減的性質時,可以用二分搜尋法加快搜尋效率。
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News