Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Lập Trình C

In các phần tử khác nhau của mảng đã sắp xếp trong C

Bài toán

Cho mảng số nguyên, loại bỏ trùng lặp và in các phần tử distinct theo thứ tự tăng dần.

Ví dụ

Input: {4,6,5,3,4,5,2,8,7,0}
Sorted: {0,2,3,4,4,5,5,6,7,8}
Distinct: 0 2 3 4 5 6 7 8

In các phần tử khác nhau của mảng đã sắp xếp trong C

Phương pháp

  1. Tìm các phần tử không trùng (so sánh với các phần tử sau)
  2. Lưu vào mảng mới array1
  3. Sắp xếp array1 (bubble sort đơn giản)
  4. In kết quả

Thuật toán

Bước 1: count=0
For i=0→size-1:
    For j=i+1→size-1:
        If array[i]==array[j] break
    If j==size: array1[count++] = array[i]
Bước 2: Sắp xếp array1[0..count-1]
Bước 3: In array1

Mã nguồn C

#include <stdio.h>

void printDistinctElements(int array[], int size) {
    int i, j, array1[size], temp, count=0;
    for (i=0; i array1[j]) {
                temp = array1[i];
                array1[i] = array1[j];
                array1[j] = temp;
            }
    for (i=0; i

Kết quả

0 2 3 4 5 6 7 8