lecture 3 code

PHOTO EMBED

Mon Aug 26 2024 07:02:09 GMT+0000 (Coordinated Universal Time)

Saved by @mdimtiyazalam

#include <stdio.h>

void mergeArrays(int arr1[], int arr2[], int n, int m, int merged[]) {
    int i = 0, j = 0, k = 0;

    // Traverse both arrays
    while (i < n && j < m) {
        if (arr1[i] < arr2[j])
            merged[k++] = arr1[i++];
        else
            merged[k++] = arr2[j++];
    }

    // Store remaining elements of first array
    while (i < n)
        merged[k++] = arr1[i++];

    // Store remaining elements of second array
    while (j < m)
        merged[k++] = arr2[j++];
}

int main() {
    int n, m;
    
    // Read size of the first array
    scanf("%d", &n);
    int arr1[n];
    for (int i = 0; i < n; i++) {
        scanf("%d", &arr1[i]);
    }

    // Read size of the second array
    scanf("%d", &m);
    int arr2[m];
    for (int i = 0; i < m; i++) {
        scanf("%d", &arr2[i]);
    }

    int merged[n + m];
    mergeArrays(arr1, arr2, n, m, merged);

    // Print the merged array
    for (int i = 0; i < n + m; i++) {
        printf("%d", merged[i]);
        if(i < n + m - 1) {
            printf(" ");
        }
    }

    return 0;
}
content_copyCOPY