Swift程式移除陣列中重複元素
在這篇文章中,我們將學習如何編寫一個Swift程式來從陣列中移除重複元素。眾所周知,陣列可以儲存相同型別的多個元素。這些元素不必唯一,可以是重複的。例如,arr = [3, 5, 6, 3, 7, 8, 3, 7, 7],這裡3和7是重複元素。
因此,這裡我們使用以下方法來移除重複元素:
使用contains()方法
使用Set()初始化器
方法1:使用contains()方法
為了從陣列中移除重複元素,我們遍歷原始陣列的所有元素,並使用contains()方法檢查新陣列是否包含來自原始陣列的指定元素。如果不是,則使用append()方法將該元素新增到新陣列中。
演算法
步驟1 - 建立一個函式。
步驟2 - 在此函式中,建立一個空陣列來儲存唯一元素。
步驟3 - 使用for迴圈遍歷陣列的每個元素。
步驟4 - 使用contains()函式檢查唯一元素,並使用append()函式將唯一元素儲存到陣列中。
步驟5 - 建立一個整數型別的陣列。
步驟6 - 呼叫函式並將建立的陣列作為引數傳遞給它。
步驟7 - 列印輸出。
示例
以下是Swift程式,用於從陣列中移除重複元素。
import Foundation import Glibc // Function to remove duplicate elements from the given array func removeDuplicateElements(arr: [Int]) -> [Int] { var uniqueElements: [Int] = [] for x in arr { if !uniqueElements.contains(x) { uniqueElements.append(x) } } return uniqueElements } let myArray = [3, 5, 67, 5, 32, 3, 5, 6, 3, 2, 1] print("Original Array:", myArray) print("Modified array:", removeDuplicateElements(arr: myArray))
輸出
Original Array: [3, 5, 67, 5, 32, 3, 5, 6, 3, 2, 1] Modified array: [3, 5, 67, 32, 6, 2, 1]
在上面的程式碼中,我們有一個整數型別的陣列。現在我們建立一個函式來移除重複元素。在此函式中,我們遍歷每個元素,並使用contains()方法檢查給定值是否在uniqueElements陣列中。如果不是,則使用append()將該值新增到uniqueElements陣列中。因此,在for迴圈結束時,uniqueElements陣列包含原始陣列中的唯一元素。
方法2:使用Set()初始化器
為了從陣列中移除重複元素,我們使用Set()建構函式將給定陣列轉換為集合,然後使用Array()建構函式將其轉換回陣列。這裡我們將其轉換為集合,因為集合型別始終包含唯一元素。
演算法
步驟1 - 建立一個數組。
步驟2 - 使用Set()初始化器將陣列轉換為集合,並使用Array()初始化器將其轉換回陣列。
步驟3 - 將結果儲存在一個新陣列中。
步驟4 - 列印輸出。
示例
以下是Swift程式,用於從陣列中移除重複元素。
import Foundation import Glibc // Array of integer type let Num = [11, 22, 2, 31, 3, 31, 41, 4, 41, 4] // Finding unique elements using set let uniqueNumbers = Array(Set(Num)) print("Original Array:", Num) print("Modified array:", uniqueNumbers) // Array of string type let myArray = ["Ox", "Cow", "Bee", "Cow", "Ox", "Cat"] // Finding unique elements using set let uniqueElements = Array(Set(myArray)) print("\nOriginal Array:", myArray) print("Modified array:", uniqueElements)
輸出
Original Array: [11, 22, 2, 31, 3, 31, 41, 4, 41, 4] Modified array: [3, 2, 11, 41, 31, 22, 4] Original Array: ["Ox", "Cow", "Bee", "Cow", "Ox", "Cat"] Modified array: ["Cow", "Cat", "Bee", "Ox"]
在上面的程式碼中,我們有一個整數型別的陣列。現在我們使用Set()初始化器將給定陣列轉換為集合,並使用Array()初始化器將結果轉換回陣列,以從給定陣列中移除重複元素。
結論
因此,這就是我們如何從給定陣列中移除重複元素的方法。這兩種方法都是移除重複元素的有效方法。