Hướng dẫn remove duplicate in array c++ - loại bỏ trùng lặp trong mảng c ++


Cố gắng xóa cùng một số có trong một mảng. Các mảng kết quả bao gồm các yếu tố độc đáo.

Logic để xóa các phần tử trùng lặp trong một mảng như sau -delete the duplicate elements in an array is as follows −

for(i=0;i

Logic để hiển thị các số sau khi xóa các bản sao như sau -

for(i=0;i

Chương trình

Sau đây là chương trình C để xóa các phần tử trùng lặp trong một mảng.

& nbsp; bản demo trực tiếp

#include
#include
int main(){
   int a[50],i,j,k, count = 0, dup[50], number;
   printf("Enter size of the array\n");
   scanf("%d",&number);
   printf("Enter Elements of the array:\n");
   for(i=0;i

Đầu ra

Khi chương trình trên được thực thi, nó sẽ tạo ra kết quả sau -

Enter size of the array
10
Enter Elements of the array:
1 1 2 4 3 5 6 5 7 1
Entered element are:
1 1 2 4 3 5 6 5 7 1
After deleting the duplicate element, the Array is:
1 2 4 3 5 6 7

Hướng dẫn remove duplicate in array c++ - loại bỏ trùng lặp trong mảng c ++

Cập nhật vào ngày 24 tháng 3 năm 2021 14:23:28

  • Câu hỏi và câu trả lời liên quan
  • Viết chương trình C để xóa các số trùng lặp trong một mảng
  • C# Chương trình để tìm tất cả các phần tử trùng lặp trong một mảng số nguyên
  • Chương trình Python để in các yếu tố trùng lặp của một mảng
  • Làm thế nào để xóa các phần tử khỏi một mảng?
  • C# chương trình để tìm nếu một mảng chứa trùng lặp
  • C chương trình để xóa một phần tử mảng bằng con trỏ
  • Làm thế nào để nhân đôi các phần tử của một mảng trong cùng một mảng với JavaScript?
  • Loại bỏ các phần tử trùng lặp khỏi một mảng trong PHP
  • C chương trình để đảo ngược một phần tử mảng
  • C chương trình để tìm các yếu tố duy nhất trong một mảng.
  • Chương trình Java để loại bỏ phần tử trùng lặp trong một mảng
  • Chương trình tìm các yếu tố trùng lặp và xóa sự xuất hiện cuối cùng của chúng trong Python
  • Làm thế nào để loại bỏ các phần tử trùng lặp của một mảng trong Java?
  • Làm thế nào để loại bỏ các phần tử trùng lặp khỏi một mảng trong JavaScript?
  • Xóa tất cả các yếu tố trong một trường mảng trong MongoDB?

Chương trình đơn giản để loại bỏ phần tử trùng lặp trong một mảng

Trong hướng dẫn này, chúng tôi sẽ học cách loại bỏ một phần tử trùng lặp khỏi một mảng. Trước khi tiến về phía trước với chương trình, nếu bạn không quen thuộc với một mảng, vui lòng đọc bài viết này: mảng bằng ngôn ngữ C.

Hướng dẫn remove duplicate in array c++ - loại bỏ trùng lặp trong mảng c ++

Xóa các bản sao khỏi mảng được sắp xếp:

Ở đây chúng tôi đang triển khai chương trình để loại bỏ một phần tử trùng lặp khỏi một mảng được sắp xếp. Chúng tôi sẽ tạo một mảng tạm thời và các phần tử sao chép từ mảng này sang mảng khác chỉ trong trường hợp không có phần tử phù hợp tiếp theo.

Lưu ý: Chương trình này sẽ chỉ hoạt động cho mảng được sắp xếp, vì vậy trong khi cung cấp đầu vào, hãy đảm bảo rằng mảng đã cho nằm trong một mảng được sắp xếp, nếu không nó sẽ cung cấp các đầu ra bất ngờ. This program will work only for sorted array so while providing an input make sure that the given array is in a sorted array, otherwise it will give unexpected outputs.

#include 
int remove_duplicate(int arr[], int n)
{

  if (n == 0 || n == 1)
    return n;

  int temp[n];

  int j = 0;
  int i;
  for (i = 0; i < n - 1; i++)
    if (arr[i] != arr[i + 1])
      temp[j++] = arr[i];
  temp[j++] = arr[n - 1];

  for (i = 0; i < j; i++)
    arr[i] = temp[i];

  return j;
}

int main()
{
  int n;
  scanf("%d", &n);
  int arr[n];
  int i;
  for (i = 0; i < n; i++)
  {
    scanf("%d", &arr[i]);
  }
  printf("\nArray Before Removing Duplicates: ");
  for (i = 0; i < n; i++)
    printf("%d ", arr[i]);

  n = remove_duplicate(arr, n);

  printf("\nArray After Removing Duplicates: ");
  for (i = 0; i < n; i++)
    printf("%d ", arr[i]);

  return 0;
}

10 1 2 2 3 4 5 6 7 7 8
1 2 2 3 4 5 6 7 7 8

Mảng trước khi loại bỏ các bản sao: 1 2 2 3 4 5 6 7 7 8 Mảng Sau khi loại bỏ các bản sao: 1 2 3 4 5 6 7 8
Array After Removing Duplicates: 1 2 3 4 5 6 7 8

Xóa các bản sao khỏi mảng chưa được sắp xếp:

Trong chương trình này, chúng tôi sẽ có thêm không gian để lưu trữ một mảng mới mà không có danh tiếng của các yếu tố trùng lặp. Chúng tôi sẽ chạy một vòng lặp lồng nhau đầu tiên là sao chép phần tử từ mảng đến mảng temp nếu phần tử đó đã tồn tại trong biến TEMP thì chúng tôi sẽ phá vỡ vòng bên trong và tiếp tục thực thi cho các phần tử còn lại cùng một quy trình.

#include 
int main()
{
  int n, count = 0;
  scanf("%d", &n);
  int arr[n], temp[n];
  for (int i = 0; i < n; i++)
  {
    scanf("%d", &arr[i]);
  }

  printf("\nArray Before Removing Duplicates: ");
  for (int i = 0; i < n; i++)
    printf("%d ", arr[i]);

  for (int i = 0; i < n; i++)
  {
    int j;
    for (j = 0; j < count; j++)
    {
      if (arr[i] == temp[j])
        break;
    }
    if (j == count)
    {
      temp[count] = arr[i];
      count++;
    }
  }

  printf("\nArray After  Removing Duplicates: ");
  for (int i = 0; i < count; i++)
    printf("%d ", temp[i]);

  return 0;
}

10 1 2 2 3 4 5 6 7 7 8
1 2 2 3 4 5 6 7 7 8

Mảng trước khi loại bỏ các bản sao: 1 2 2 3 4 5 6 7 7 8 Mảng Sau khi loại bỏ các bản sao: 1 2 3 4 5 6 7 8
Array After Removing Duplicates: 1 2 3 4 5 6 7 8

Xóa các bản sao khỏi mảng chưa được sắp xếp:

  • Trong chương trình này, chúng tôi sẽ có thêm không gian để lưu trữ một mảng mới mà không có danh tiếng của các yếu tố trùng lặp. Chúng tôi sẽ chạy một vòng lặp lồng nhau đầu tiên là sao chép phần tử từ mảng đến mảng temp nếu phần tử đó đã tồn tại trong biến TEMP thì chúng tôi sẽ phá vỡ vòng bên trong và tiếp tục thực thi cho các phần tử còn lại cùng một quy trình.

  • Hướng dẫn được đề xuất:

  • Mảng trong c

  • Vòng lặp trong c



Làm thế nào để bạn loại bỏ các đối tượng trùng lặp khỏi một mảng?

Mảng.filter () xóa tất cả các đối tượng trùng lặp bằng cách kiểm tra xem id-marray được ánh xạ trước đó có bao gồm ID hiện tại ({id} phá hủy đối tượng chỉ vào ID của nó). removes all duplicate objects by checking if the previously mapped id-array includes the current id ( {id} destructs the object into only its id).

Làm thế nào các bản sao được xóa khỏi một mảng mà không sử dụng bất kỳ thư viện nào trong C?

Làm thế nào các bản sao được xóa khỏi một mảng mà không cần sử dụng bất kỳ .....
+5.Int a [] = {3,5,8,8};For (int i = 0; ii; j--) {if (a [i] .equals (a [j])) {flag = 1} other {k ++;a [k] = a [i];}} if (cờ! = 1) {System.out.print (a [k]);}} Đó là hoàn hảo.....
+3. ... .

Làm cách nào để loại bỏ các ký tự trùng lặp khỏi mảng char?

Chúng ta nên sử dụng các bước sau để loại bỏ các bản sao ...
Trong bước đầu tiên, chúng ta phải chuyển đổi chuỗi thành một mảng ký tự ..
Tính kích thước của mảng ..
Phương thức gọi lại sao chép () bằng cách chuyển mảng ký tự và độ dài ..
Traverse tất cả các ký tự có trong mảng ký tự ..

Làm cách nào để loại bỏ một phần tử trùng lặp khỏi một mảng trong C ++?

Chương trình C ++ để loại bỏ các phần tử trùng lặp khỏi mảng..
Chương trình có một mảng ..
Sử dụng cho các vòng lặp, mảng được kiểm tra các phần tử lặp đi lặp lại ..
Phần còn lại của các yếu tố được sao chép vào một mảng khác, trong khi các yếu tố lặp đi lặp lại không ..
Kết quả được in ..