Track
/
Clojure
Clojure
/
Esercizi
/
Appiattisci un array
Appiattisci un array

Appiattisci un array

Medio

Introduzione

È arrivato un carico di provviste di emergenza, ma c'è un problema. Per proteggerle dai danni, gli oggetti (torce, kit di primo soccorso, coperte) sono imballati dentro delle scatole, e alcune di queste scatole sono a loro volta dentro altre scatole, annidate su più livelli!

Per essere preparati a un'emergenza, tutto deve essere facilmente accessibile in una sola scatola. Riesci a disimballare tutte le provviste e a sistemarle in un'unica scatola, così sono pronte quando servono di più?

Istruzioni

Prendi un array annidato di qualsiasi profondità e restituisci un array completamente appiattito.

Tieni presente che alcune tracce potrebbero includere valori simili a null nell'array di input, e il modo in cui questi valori sono rappresentati varia da traccia a traccia. Questi valori vanno esclusi dall'array appiattito.

Inoltre, l'input può essere di un tipo di dato diverso e contenere tipi diversi, a seconda della traccia.

Controlla la suite di test per i dettagli.

Esempio

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

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

Appendice

Note

Le istruzioni qui sopra sono sincronizzate con un repository condiviso, per garantire coerenza tra tutte le tracce linguistiche. Questa appendice fornisce chiarimenti aggiuntivi o modifica le istruzioni secondo necessità, per allinearsi meglio agli obiettivi della traccia Clojure.

Per questo esercizio nella traccia Clojure, puoi dare per scontato che l'input sia una qualsiasi combinazione annidata di vettori e che l'output sia un vettore, come indicato dai test. Tuttavia, questo non è un requisito rigoroso: sei libero di dare per scontato che l'input sia una qualsiasi combinazione annidata di cose sequenziali (liste, vettori, ecc.) e che l'output sia una sequenza.

Modifica tramite GitHub Il link si apre in una nuova finestra o scheda
Clojure Exercism

Vuoi iniziare Appiattisci un array?

Iscriviti a Exercism per imparare e padroneggiare Clojure con 12 concetti105 esercizi e il mentoring di persone reali, tutto gratis.