C 语言从数组中删除重复元素2024年8月28日 | 阅读 8 分钟 本节将讨论在C语言编程语言中从数组中移除或删除重复元素。当相同的元素在已排序或未排序的数组中出现时,数组的元素就称为重复元素。我们需要删除这些重复元素或相同的数字,以使结果数组包含唯一元素。 例如,有一个整型数组 arr[10],其中包含 { 5, 8, 3, 3, 5, 9} 元素。在这个数组中,3 和 5 各出现了两次。因此,这些是重复元素。所以,从数组 arr[] 中删除重复元素后,我们得到 5, 8, 3, 9 元素。 从未排序数组中删除重复元素的步骤 步骤 1:从用户那里输入数组大小并将其存储在 size 变量中。 步骤 2:使用 for 循环读取数组元素并将其存储在 arr[i] 变量中。 步骤 3:要从数组中获取重复元素,我们需要使用两个 for 循环。第一个循环从 0 到 size。循环结构是:for (i = 0; i < size; i++)。 另一个循环选择数组中的每个元素,并将其与相应元素进行比较以获取重复元素。内部循环的结构是:for (j = i + 1; j < size; j++),找到后续相同元素的代码是:if (arr[i] == arr[j])。 步骤 4:如果遇到任何重复元素,则从数组中删除该重复元素,并将数组的大小减 1,即 size = size - 1。 步骤 5:之后,打印数组中的唯一元素,代码如下: 示例 1:从数组中删除重复元素的程序 让我们举一个例子,在 C 语言编程语言中删除数组中的相同数字或重复元素。 当我们在 C 编译器中执行上述程序时,它会在控制屏幕上产生如下输出。 Define the number of elements in an array: 10 Enter 10 elements of an array: 57 12 89 32 62 12 89 35 67 75 Array elements after deletion of the duplicate elements: 57 12 89 32 62 35 67 75 从已排序数组中删除重复元素 假设我们有一个给定的已排序数组,任务是从数组中删除相同的元素。例如,有一个整型数组,大小为 5,包含 arr[] = {2, 2, 3, 3, 5} 元素。在这个已排序数组中,2 和 3 这两个数字各出现两次。因此,这些是重复元素。所以,从数组 arr[] 中删除重复元素后,我们得到 2, 3, 5 元素,数组的新大小为 3。 从已排序数组中删除重复元素的算法 以下是在 C 语言编程语言中从已排序数组中删除重复数组元素的算法。
示例 2:使用用户定义函数从已排序数组中删除重复元素的程序 让我们举一个例子,在 C 语言编程语言中从已排序数组中删除相同的数字或重复元素。 当我们在 C 编译器中执行上述程序时,它会在控制屏幕上产生如下输出。 Define the no. of elements of the array: 10 Enter the elements: 5 6 6 7 8 8 9 10 11 11 Elements before removing duplicates: 5 6 6 7 8 8 9 10 11 11 Display array's elements after removing duplicates: 5 6 7 8 9 10 11 示例 3:使用指针从数组中删除重复元素的程序 让我们举一个例子,在 C 语言编程语言中使用指针删除重复元素并打印唯一的数组元素。 当我们在 C 编译器中执行上述程序时,它会在控制屏幕上产生如下输出。 Define the size of the array element: 10 Enter the elements of the array: 5 5 6 7 7 8 8 9 10 11 After removing the duplicate elements: 5 11 6 7 10 8 9 示例 4:通过为相同元素创建单独的索引来从已排序数组中删除重复元素 让我们举一个例子,在 C 语言编程语言中,通过为相同数量的元素/索引创建额外空间来显示已排序数组中的唯一元素。 当我们在 C 编译器中执行上述程序时,它会在控制屏幕上产生如下输出。 Display the unique elements from the sorted array: 5 10 15 20 25 30 下一个主题C语言泛型链表 |
我们请求您订阅我们的新闻通讯以获取最新更新。