Practice #2
Lektion 10 von 13 im Kurs Stack - Datenstrukturen-Serie #1 von Coddy.
Die nächsten Herausforderungen sind darauf ausgelegt, Stack in ihnen zu verwenden.
Die Stack-Datenstruktur wird bereits für dich bereitgestellt – verwende sie!
Aufgabe
EinfachSchreiben Sie eine Funktion nse, die ein Ganzzahl-Array erhält und ein Array zurückgibt, das das nächste kleinere Element (links davon) für jedes Element enthält. Wenn es links von einem Element kein kleineres Element gibt, geben Sie -1 zurück.
Verwenden Sie den bereitgestellten Stack, um dieses Problem zu lösen!
Beispiel:
Eingabe: [4, 5, 2, 10, 8]
Erwartete Ausgabe: [-1, 4, -1, 2, 2]
Probier es selbst
#include <stdio.h>
#include <stdlib.h>
#include "nse.h"
int main() {
int* a = (int*)malloc(sizeof(int) * 1000);
int aSize = 0;
int x;
while (scanf("%d", &x) == 1) {
a[aSize++] = x;
}
int returnSize;
int* result = nse(a, aSize, &returnSize);
for (int i = 0; i < returnSize; i++) {
printf("%d\n", result[i]);
}
free(a);
return 0;
}