﻿ C exercises: Remove the duplicates from a given array of integers - w3resource # C Exercises: Remove the duplicates from a given array of integers

## C Programming Practice: Exercise-12 with Solution

Write a C programming to remove the duplicates from a given array of integers.

C Code:

``````#include <stdio.h>
#include <stdlib.h>
static int remove_duplicates(int* nums, int arr_size)
{
if (arr_size <= 1) {
return arr_size;
}

int i = 0, j, count = 1;
while (i < arr_size) {
for (j = i + 1; j < arr_size && nums[i] == nums[j]; j++) {}
if (j < arr_size) {
nums[count++] = nums[j];
}
i = j;
}

return count;
}

int main(void)
{
int nums[] = {1,1,2,3,4,4,5,6,6,6};
int size = sizeof(nums)/sizeof(nums);
printf("Original array:\n");
int i;
for (i = 0; i < size; i++) {
printf("%d ", nums[i]);
}
int count = remove_duplicates(nums, size);
printf("\nAfter removing duplicates from the above sorted array:\n");
for (i = 0; i < count; i++) {
printf("%d ", nums[i]);
}
printf("\n");
return 0;
}
``````

Sample Output:

```Original array:
1 1 2 3 4 4 5 6 6 6
After removing duplicates from the above sorted array:
1 2 3 4 5 6
```

Pictorial Presentation: Flowchart: ## C Programming Code Editor:

What is the difficulty level of this exercise?

﻿

## C Programming: Tips of the Day

The tilde operator in C:

The ~ operator is bitwise NOT, it inverts the bits in a binary number:

```NOT 011100
= 100011
```

Ref : https://bit.ly/3DR1N24