iT邦幫忙

2023 iThome 鐵人賽

DAY 27
0

Set

Set 資料結構的主要特性是「元素的獨特性」和「無序性」。這個特性就像我們在生活中遇到的集合:每個元素都是獨特的,並且集合中的元素沒有特定的順序。

將其具體化,想像我們在一個果園裡收集不同種類的水果。當我們在果園裡時,會收集各種不同的水果,但每種水果只收集一次。這裡,我們不在乎收集水果的順序,而是在乎收集到的水果種類。

這種「元素的獨特性」和「無序性」的行為揭示了 Set 的核心特點。因此,任何具有此特性的資料結構都可以稱作 Set。

一般的 Set,會有以下幾個功能:

  • ADD(element):把元素加入 Set
  • REMOVE(element):把指定的元素從 Set 中移除
  • CONTAINS(element):檢查某個元素是否存在於 Set 中
  • IsEmpty():檢查 Set 是否為空

Set 的應用

Set的主要功能是「元素的獨特性」和「無序性」,因此常被用來處理需要去重、或是不需要維護元素順序的問題。以下是 Set 的一些典型應用:

  • 資料庫查詢,例如找出不重複的資料項。
  • 社交網路,例如找出兩個人的共同朋友。
  • 統計,例如計算一個集合中獨特元素的數量。
  • 圖論中的演算法,例如找出無向圖的連通分量。
  • 編譯器的最佳化,例如常量傳播和死碼刪除。

了解 Set 和其應用,有助於我們設計有效的系統,並確保資料的獨特性和無序性得到妥善的處理。


上一篇
Day 26 群星歸位...永恆的海底...資結升起...萬物歸三
下一篇
Day 28 群星歸位...永恆的海底...資結升起...萬物歸五
系列文
CS補完計畫—演算法與資料結構的第三次衝擊30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言