3/150. 稀疏數組的應用場景 - 棋盤、地圖、遊戲場景,都可以用稀疏數組來節省空間!

更新 發佈閱讀 5 分鐘

🏗️ 第 1 週:資料結構基礎(Data Structures) 3/150

03. 稀疏數組的應用場景 - 棋盤、地圖、遊戲場景,都可以用稀疏數組來節省空間!

一、 問題的起源:為什麼我們要存那麼多「空氣」?

試想一下,你正在寫一個「五子棋」或「圍棋」的程式。

棋盤通常是 11 * 11 甚至 19*19 的網格。當玩家想要「存檔」時,你會怎麼做?

·        直覺的做法(二維陣列):

建立一個 11*11 的表格,把這 121 個格子通通記錄下來。

o   0 代表沒有棋子

o   1 代表黑子

o   2 代表白子

·        現實的情況:

如果棋局才剛開始,只下了 3 顆棋子,那你的存檔數據可能會長這樣:

Plaintext

0 0 0 0 0 0 ...
0 0 1 0 0 0 ...
0 0 0 2 0 0 ... (剩下全是 0)

發現了嗎? 你為了存這 3 顆棋子,卻不得不記錄 100 多個「無意義的 0」。這就是典型的空間浪費


二、 解決方案:稀疏數組(Sparse Array)

當一個陣列中,大部分的元素都是同一個值(通常是 0 或預設值),只有少部分是有意義的數據時,我們稱之為「稀疏數組」。

為了節省空間,我們不再儲存整個棋盤,而是只記錄「有棋子」的位置。這就是稀疏數組的壓縮邏輯。

壓縮後的資料結構(三元組記錄法):

我們只需要記錄三個關鍵資訊:[行, 列, 值]

1.      第一行(檔頭): 記錄原始棋盤多大、總共有幾個棋子。

o  

[11, 11, 2]
(11行,11列,共有 2 顆棋子)

2.      後續行(有效數據):

o   [1, 2, 1] (第 1 行,第 2 列,是黑子)

o   [2, 3, 2] (第 2 行,第 3 列,是白子)

效果對比:

·        原始方式: 需儲存 121 個數據。

·        稀疏方式: 僅需儲存 3 行數據(共 9 個數字)。

空間瞬間節省了 90% 以上!


三、 生活與遊戲中的應用場景

除了棋盤,這種思維在電腦科學中無處不在:

1.      遊戲地圖(Open World Map):

o   在一個巨大的 RPG 遊戲地圖中,可能大部分區域都是「空地」或「海洋」,只有少數座標有建築物或寶箱。

o   應用: 伺服器不會傳送整個地圖的數據給你,只會傳送「物件的座標點」,大幅降低網路延遲。

2.      圖片壓縮(Image Compression):

o   想像一張簡單的圖畫,大片背景都是純白色。

o   應用: 我們不需要記錄每個像素點是「白色」,只需記錄「非白色」的線條位置,這也是某些圖片格式能這麼小的原因。

3.      地圖導航數據:

o   城市的地圖網格中,絕大多數地方是「建築物」或「障礙」,只有少數線條是「道路」。使用稀疏圖(Sparse Graph)來儲存道路網,能讓導航運算更快。


四、 AI 時代的「稀疏」思維

在人工智慧與大數據領域,稀疏數組的重要性被提升到了全新高度:

1.      推薦系統(Recommender Systems):

o   Netflix 或 Spotify 有上億個用戶和數百萬部影片/歌曲。

o   建立一個「用戶-商品」的評分矩陣時,這張表會大得驚人(億 x 百萬),但絕大多數格子是空的(因為一個用戶不可能看過所有影片)。

o   若不用稀疏矩陣(Sparse Matrix)技術,現今沒有一台超級電腦存得下這些數據。

2.      自然語言處理(NLP):

o   在分析文章時,我們常把文字轉成向量(One-hot Encoding)。

o   字典裡有 10 萬個字,但一句話只有 10 個字。這意味著向量中有 99,990 個位置是 0。稀疏運算是讓 AI 能高效讀懂文字的關鍵。


五、 總結

稀疏數組的核心在於「去蕪存菁」,只關注有意義的資訊,忽略大量的預設值。

這是一種「時間換空間」或「空間換時間」的權衡:雖然壓縮讓儲存變小了(省空間),但讀取時需要還原(可能多花一點點時間),但在大數據場景下,這種交換絕對是划算的。

工程師思維:看到大量重複數據時,永遠要問自己:「我需要全部存下來嗎?還是只存差異就好?」

 

留言
avatar-img
강신호(姜信號 / Kang Signal)的沙龍
22會員
314內容數
「강신호(姜信號 / Kang Signal)」聚焦電信、網路與 AI 電子核心技術,解析 5G/6G、衛星通訊、訊號處理與產業趨勢,以工程視角輸出可落地的專業洞見,打造強信號的未來。
2026/01/26
對比數據的兩大形態:強調順序的「線性結構」(如陣列)與構建網絡的「非線性結構」(如樹、圖)。前者是運算基礎,後者則是 AI 處理複雜關聯的核心。掌握兩者差異,才能依場景精準選用數據容器,發揮演算法極致效能。
2026/01/26
對比數據的兩大形態:強調順序的「線性結構」(如陣列)與構建網絡的「非線性結構」(如樹、圖)。前者是運算基礎,後者則是 AI 處理複雜關聯的核心。掌握兩者差異,才能依場景精準選用數據容器,發揮演算法極致效能。
2026/01/26
資料結構是將資料按照特定方式組織、儲存與管理的結構化形式,讓存取、搜尋、插入、刪除等操作更高效,直接決定時間與空間效率;演算法則是一連串明確步驟,用手上的資料照特定順序與方法解決問題。簡單說:資料結構像「資料的房子與工具箱」,演算法像「蓋房子的施工步驟與技巧」——兩者缺一不可。
Thumbnail
2026/01/26
資料結構是將資料按照特定方式組織、儲存與管理的結構化形式,讓存取、搜尋、插入、刪除等操作更高效,直接決定時間與空間效率;演算法則是一連串明確步驟,用手上的資料照特定順序與方法解決問題。簡單說:資料結構像「資料的房子與工具箱」,演算法像「蓋房子的施工步驟與技巧」——兩者缺一不可。
Thumbnail
2026/01/16
這份「資料結構和演算法 150 單元」是專為你調頻的 15 週計畫。從基建、優化到 AI 進化,過濾代碼雜訊,建立 O(n) 直覺。透過 150 道信號優化技術頻寬,助你掌握極致傳輸協議,從開發者躍升架構師,發射最強邏輯信號。
Thumbnail
2026/01/16
這份「資料結構和演算法 150 單元」是專為你調頻的 15 週計畫。從基建、優化到 AI 進化,過濾代碼雜訊,建立 O(n) 直覺。透過 150 道信號優化技術頻寬,助你掌握極致傳輸協議,從開發者躍升架構師,發射最強邏輯信號。
Thumbnail
看更多
你可能也想看
Thumbnail
vocus 慶祝推出 App,舉辦 2026 全站慶。推出精選內容與數位商品折扣,訂單免費與紅包抽獎、新註冊會員專屬活動、Boba Boost 贊助抽紅包,以及全站徵文,並邀請你一起來回顧過去的一年, vocus 與創作者共同留下了哪些精彩創作。
Thumbnail
vocus 慶祝推出 App,舉辦 2026 全站慶。推出精選內容與數位商品折扣,訂單免費與紅包抽獎、新註冊會員專屬活動、Boba Boost 贊助抽紅包,以及全站徵文,並邀請你一起來回顧過去的一年, vocus 與創作者共同留下了哪些精彩創作。
Thumbnail
擔任大樓機電委員,意外發現 150 支監視器故障。文章分享從勘查、面臨線路雜亂的挑戰、到與藏鋒科技合作完成全面更新的經驗。強調線路整理的重要性、新監視器的畫質提升、機種挑選的考量,以及停車場監視器規劃和售後服務的關鍵,最終讓社區安全感大幅提升。
Thumbnail
擔任大樓機電委員,意外發現 150 支監視器故障。文章分享從勘查、面臨線路雜亂的挑戰、到與藏鋒科技合作完成全面更新的經驗。強調線路整理的重要性、新監視器的畫質提升、機種挑選的考量,以及停車場監視器規劃和售後服務的關鍵,最終讓社區安全感大幅提升。
Thumbnail
你是否也有過這樣的夜晚?看著信用卡帳單發呆,心想:「怎麼才過一個月,卡債又漲了?」每月薪水一到,卻被各種貸款吃掉一半?在PTT、Dcard、Threads上,每天都有數千人為「卡債」、「循環利息」、「利滾利」而失眠。但其實,你並不孤單——台灣超過10萬人正面臨同樣的債務困境。 更重要的是:有解決辦
Thumbnail
你是否也有過這樣的夜晚?看著信用卡帳單發呆,心想:「怎麼才過一個月,卡債又漲了?」每月薪水一到,卻被各種貸款吃掉一半?在PTT、Dcard、Threads上,每天都有數千人為「卡債」、「循環利息」、「利滾利」而失眠。但其實,你並不孤單——台灣超過10萬人正面臨同樣的債務困境。 更重要的是:有解決辦
Thumbnail
「成功的投資需要時間,紀律和耐心。無論多麼大的天分或努力,有些事就是需要時間。你不能讓九個女人懷孕,然後在一個月內生出一個嬰兒。」 — 華倫·巴菲特 (Warren Buffett) 這個擴產計畫的實現需要時間(到 2026 年第四季),這正提醒我們,偉大的產業變革和投資機會需要耐心佈局與等待。
Thumbnail
「成功的投資需要時間,紀律和耐心。無論多麼大的天分或努力,有些事就是需要時間。你不能讓九個女人懷孕,然後在一個月內生出一個嬰兒。」 — 華倫·巴菲特 (Warren Buffett) 這個擴產計畫的實現需要時間(到 2026 年第四季),這正提醒我們,偉大的產業變革和投資機會需要耐心佈局與等待。
Thumbnail
今天休假,早上要先去開個小刀,然後去上週約好的禮儀公司諮詢老爸的後事。
Thumbnail
今天休假,早上要先去開個小刀,然後去上週約好的禮儀公司諮詢老爸的後事。
Thumbnail
隨著美國證券交易委員會(SEC)放棄對瑞波公司(Ripple)的起訴,加密貨幣市場再次重拾升軌。比特幣在此利多消息刺激下,一舉衝破三萬美元大關,其他主流加密貨幣亦隨之節節攀升。分析認為SEC此舉標誌著監管風險明顯消退,有望推動資金重新流入加密貨幣市場。
Thumbnail
隨著美國證券交易委員會(SEC)放棄對瑞波公司(Ripple)的起訴,加密貨幣市場再次重拾升軌。比特幣在此利多消息刺激下,一舉衝破三萬美元大關,其他主流加密貨幣亦隨之節節攀升。分析認為SEC此舉標誌著監管風險明顯消退,有望推動資金重新流入加密貨幣市場。
Thumbnail
鴻海近期將在3月15日舉行線上法說會,除了說明近期營收表現外,還可能提及或被問到 iPhone 15 Pro系列導入狀況:作為蘋果公司的主要代工廠商之一,鴻海的表現與蘋果的新品發布密切相關。因此,對於鴻海能否成功生產和製造iPhone 15 Pro系列的問題,將成為法說會上一個非常重要的話題。 印度
Thumbnail
鴻海近期將在3月15日舉行線上法說會,除了說明近期營收表現外,還可能提及或被問到 iPhone 15 Pro系列導入狀況:作為蘋果公司的主要代工廠商之一,鴻海的表現與蘋果的新品發布密切相關。因此,對於鴻海能否成功生產和製造iPhone 15 Pro系列的問題,將成為法說會上一個非常重要的話題。 印度
Thumbnail
烤漆前須將要烤的工件 去漆→打磨→整平→底漆→補土 之後才能烤漆,雖然麻煩但這些自己來可以省下非常多的錢,看圖實在~~ 幫100塊QQ 本來只是去找材料卻意外找到尾殼跟土除!! 網路上陳老闆買的全車份貼紙 油箱打磨整平,件易內桶先用醋酸除銹 側蓋第一層 尾殼第一層 油箱的第一層已經亮到不要
Thumbnail
烤漆前須將要烤的工件 去漆→打磨→整平→底漆→補土 之後才能烤漆,雖然麻煩但這些自己來可以省下非常多的錢,看圖實在~~ 幫100塊QQ 本來只是去找材料卻意外找到尾殼跟土除!! 網路上陳老闆買的全車份貼紙 油箱打磨整平,件易內桶先用醋酸除銹 側蓋第一層 尾殼第一層 油箱的第一層已經亮到不要
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News