[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: scheme : list append
From: |
Gilles THIBAULT |
Subject: |
Re: scheme : list append |
Date: |
Tue, 12 May 2015 14:58:40 +0200 |
User-agent: |
KMail/4.12.5 (Linux/3.14.41-desktop-1.mga4; KDE/4.12.5; x86_64; ; ) |
Le mardi 12 mai 2015, 08:55:35 Daniel Cartron a écrit :
> Bonjour,
>
> J'ai une liste '("a" "b")
> J'ai un vecteur #("1" "2" "3")
>
> et je veux ajouter (vector-ref monvecteur 2) à ma liste pour avoir
> '("a" "b" "3") mais pas moyen de trouver comment faire
> avec
> (append maliste (vector-ref monvecteur 2))
> j'obtiens
> ("a" "b" . "3") et ce n'est pas ce que je veux à savoir ("a" "b" "3")
>
Si tu t'en fiches de l'ordre de la liste :
(cons (vector-ref monvecteur 2) '("a" "b"))
=> ( "3" "a" "b")
Si tu veux respecter l'ordre
(append '("a" "b") (list (vector-ref monvecteur 2)))
=> ("a" "b" "3") (non vérifier)
En terme de rapidité et de mémoire, dans une grande boucle par ex, il vaut
mieux utiliser cons, quitte à construire d'abord sa liste à l'envers et la
retourner ensuite avec (reverse malist)
A bientôt
--
Gilles