Friday 10 November 2017

C Program to Find if a given Integer X appears more than N/2 times in a Sorted Array of N Integers


Code:

# include
# define bool int

bool Morenooftimes(int array[], int n, int x)
{
    int i;
    int final_index = n % 2 ? n / 2 : (n / 2 + 1);

    for (i = 0; i < final_index; i++)
    {
        /* check if x is presents more than n/2 times */
        if (array[i] == x && array[i + n / 2] == x)
            return 1;
    }
    return 0;
}

int main()
{
    int array[] = {10, 15, 15, 12, 17 ,15};
    int n = sizeof(array) / sizeof(array[0]);
    int x = 15;
    if (Morenooftimes(array, n, x))
        printf("The given no %d appears more than %d times in array[]", x, n/2);
    else
        printf("The given no %d does not appear more than %d times in array[]", x, n/2);
    getchar();
    return 0;

}

Output:

The given no 15 appears more than 3 times in array[]


More C Programs














100+ Best Home Decoration Ideas For Christmas Day 2019 To Make Home Beautiful

Best gifts for Christmas Day | Greeting cards for Christmas Day | Gift your children a new gift on Christmas day This Christmas d...