//从有序顺序表中删除所有其值重复的元素,使表中所有元素的值均不同
bool delList(int* arr, int len) {
int k = 0;//用于记录删除了多少个元素
for (int i = 1; i < len; i++)
{
if (*(arr + i-1) == *(arr + i))
{
k++;
}
else
{
*(arr + i - k) = *(arr + i);
}
}
for (int i = len-k; i < len; i++)
{
*(arr + i) = NULL;
}
return true;
}
int main()
{
int arr[] = { 1,2,2,3,3,4,5,5,6,7,7,8 };
int len = sizeof(arr) / sizeof(int);
delList(arr, len);
int i = 0;
while (*(arr + i))
{
printf("%d", *(arr + i));
i++;
}
return 0;
}
王道408c语言实现4
最新推荐文章于 2024-08-04 22:51:24 发布