Menu
Coddy logo textTech

תרגול #1

שיעור 10 מתוך 14 בקורס רשימה מקושרת – סדרת מבני נתונים #5 של Coddy.

challenge icon

אתגר

קל

כתבו פונקציה reverseList שמקבלת מערך של מספרים שלמים arr ומחזירה את המערך בסדר הפוך.

השתמשו ברשימה מקושרת כדי לפתור את הבעיה! הוסיפו כל ערך לתחילת הרשימה, ואז קראו את הערכים.

עליכם להשתמש במחלקה LinkedList (שמסופקת בקובץ linkedlist.<ext> יחד עם node.<ext>) — אל תשתמשו בפעולות מובנות בשפה, כמו פעולת ההיפוך המובנית של מערכים, חיתוך או פעולות רשימה מהספרייה הסטנדרטית, כדי לחשב את התוצאה.

נסו בעצמכם

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "solution.h"

int main() {
    char line[8192];
    if (!fgets(line, sizeof(line), stdin)) line[0] = '\0';
    int arr[4096];
    int len = 0;
    char* tok = strtok(line, " \t\r\n");
    while (tok) { arr[len++] = atoi(tok); tok = strtok(NULL, " \t\r\n"); }
    int rs = 0;
    int* r = reverseList(arr, len, &rs);
    for (int idx = 0; idx < rs; idx++) {
        if (idx > 0) printf(" ");
        printf("%d", r[idx]);
    }
    printf("\n");
    return 0;
}

כל השיעורים ביחידה רשימה מקושרת – סדרת מבני נתונים #5

תרגלו בעצמכם: קומפיילר C אונליין