Kurzusok
/
Pharo
Pharo
/
Feladatok
/
Tömb lapítása
Tömb lapítása

Tömb lapítása

Könnyű

Bevezetés

Megérkezett egy szállítmány vészhelyzeti felszerelés, de van egy probléma. Hogy megóvják őket a sérülésektől, a tárgyakat (zseblámpák, elsősegélykészletek, takarók) dobozokba csomagolták, és néhány doboz több rétegen keresztül más dobozokba van ágyazva!

Egy vészhelyzetre készülve mindennek könnyen elérhetőnek kell lennie egyetlen dobozban. Ki tudod csomagolni az összes felszerelést, és egyetlen dobozba rakni, hogy a legnagyobb szükség idején készen álljanak?

Utasítások

Vegyél egy tetszőleges mélységű, egymásba ágyazott tömböt, és add vissza teljesen kilapítva.

Ne feledd, hogy egyes nyelvi kurzusoknál a bemeneti tömb tartalmazhat null-szerű értékeket, és az, hogy ezeket az értékeket hogyan ábrázolják, kurzusként változik. Az ilyen értékeket ki kell zárni a kilapított tömbből.

Ráadásul a bemenet adattípusa és a benne előforduló típusok is kurzusként eltérőek lehetnek.

A részleteket a tesztkészletben találod.

Példa

bemenet: [1, [2, 6, null], [[null, [4]], 5]]

kimenet: [1, 2, 6, 4, 5]

Megjegyzés

A beépített laposítási metódus használata nélkül is készíthetsz sajátot, de meg kell különböztetned egymástól azt, ami gyűjtemény, és azt, ami nem. Ha viszont úgy döntesz, hogy a beépített laposítási metódusokat használod, létre kell hoznod egy új Stream típust, hogy felülírd a hibás viselkedést.

Szerkesztés GitHubon A hivatkozás új ablakban vagy lapon nyílik meg
Pharo Exercism

Készen állsz elkezdeni a(z) Tömb lapítása feladatot?

Iratkozz fel az Exercism-re, hogy megtanuld és elsajátítsd a(z) Pharo nyelvet 50 feladat segítségével, valódi emberi mentorálással, mindez ingyen.