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()初始化器将结果转换回数组,以从给定数组中移除重复元素。

结论

因此,这就是我们如何从给定数组中移除重复元素的方法。这两种方法都是移除重复元素的有效方法。

更新于: 2023年1月9日

8K+浏览量

开启你的职业生涯

通过完成课程获得认证

立即开始
广告