All submissions

Find Maximum Element Using Pointer Walk

Code

#include <stdio.h>

int find_max_element(int *ptr, int n) {
    int i, j, temp,max;
    max = *(ptr);
    //printf("\nmax=%d", max);
    for (i = 0; i < n - 1; i++) {
        for (j = 0; j < n - i - 1; j++) {
            // Compare elements using pointer dereferencing
            if (*(ptr + j) > *(ptr + j + 1)) {
                // Swap elements using pointer dereferencing
                temp = *(ptr + j);
                *(ptr + j) = *(ptr + j + 1);
                *(ptr + j + 1) = temp;
            }
        }
    }
    max = *(ptr+i);
    return max;
}

int main() {
    int n ,i ;
    scanf("%d", &n);

    int arr[100];
    for (int i = 0; i < n; i++) {
        scanf("%d", &arr[i]);
    }

    int result = find_max_element(arr, n);
    printf("%d", result);
    return 0;
}

Solving Approach

 

 

 

Loading...

Input

5 10 25 5 30 15

Expected Output

30