How to check if a given array is a sparse array in C

1 Answer

0 votes
#include <stdio.h>
#include <stdbool.h>

bool isSparse(int arr[], int size) {
    int zeroCount = 0;

    for (int i = 0; i < size; i++) {
        if (arr[i] == 0)
            zeroCount++;
    }

    return zeroCount > size / 2;
}

int main() {
    int arr[] = {0, 4, 0, 1, 0, 0, 0, 3, 0};
    int size = sizeof(arr) / sizeof(arr[0]);

    if (isSparse(arr, size))
        printf("Sparse array\n");
    else
        printf("Not a sparse array\n");

    return 0;
}


/*
run:

Sparse array

*/

 



answered 2 days ago by avibootz
...