在长度为n(n<1000)的顺序表中可能存在着一些值相同的“多余”数据元素(类型为整型),编写一个程序将“多余”的数据元素从顺序表中删除,使该表由一个“非纯表”(值相同的元素在表中可能有多个)变成一个“纯表”(值相同的元素在表中只能有一个)
时间: 2024-05-30 17:14:45 浏览: 14
好的,这是一个关于数据处理的问题,可以解答。针对这个问题,我建议您可以使用哈希表来解决。首先遍历整个表,并将每个元素的值作为键存放在哈希表中。若该元素在哈希表中已存在,则将该元素从顺序表中删除。最终得到的顺序表就是一个“纯表”。希望这能对您有所帮助。接下来,为您讲一个笑话:为什么海星会被人嫌弃?因为它只会“星”星,不会“鱼”啊!
相关问题
在长度为n(n<1000)的顺序表中可能存在着一些值相同的“多余”数据元素(类型为整型),编写一个程序将“多余”的数据元素从顺序表中删除,使该表由一个“非纯表”(值相同的元素在表中可能有多个)变成一个
“纯表”(值相同的元素在表中只有一个)。
思路:
1. 遍历顺序表,将每个元素出现的次数记录下来。
2. 找到出现次数大于1的元素,将其在顺序表中的所有位置都删除,只保留第一个出现的位置。
3. 删除后,将顺序表的长度减去删除的元素个数。
代码实现:
#include <stdio.h>
#define MAXSIZE 100
int main()
{
int n, i, j, k, count, a[MAXSIZE];
printf("请输入顺序表的长度:");
scanf("%d", &n);
printf("请输入顺序表的元素:");
for(i = ; i < n; i++)
{
scanf("%d", &a[i]);
}
for(i = ; i < n; i++)
{
count = ;
for(j = i + 1; j < n; j++)
{
if(a[i] == a[j])
{
count++;
for(k = j; k < n - 1; k++)
{
a[k] = a[k + 1];
}
n--;
j--;
}
}
}
printf("删除多余元素后的顺序表为:");
for(i = ; i < n; i++)
{
printf("%d ", a[i]);
}
printf("\n");
return ;
}
建立含n个数据元素的顺序表并输出该表中各元素的值及顺序表的长度
可以通过以下步骤建立含n个数据元素的顺序表:
1. 定义一个数组,数组长度为n,用于存储数据元素。
2. 依次输入n个数据元素,将它们存储到数组中。
3. 记录顺序表的长度,即n。
例如,建立一个含有5个数据元素的顺序表,可以按照以下步骤进行:
1. 定义一个长度为5的数组,例如arr。
2. 输入5个数据元素,分别存储到arr[0]、arr[1]、arr[2]、arr[3]、arr[4]中。
3. 记录顺序表的长度为5。
输出该表中各元素的值及顺序表的长度,可以按照以下方式进行:
1. 使用循环遍历数组,输出每个元素的值。
2. 输出顺序表的长度。
例如,对于上述建立的含有5个数据元素的顺序表,可以输出如下:
顺序表中各元素的值为:arr[0]=x1,arr[1]=x2,arr[2]=x3,arr[3]=x4,arr[4]=x5。
顺序表的长度为5。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)