Opérations sur les tableaux
Impossible d'accéder à la ressource audio ou vidéo à l'adresse :
La ressource n'est plus disponible ou vous n'êtes pas autorisé à y accéder. Veuillez vérifier votre accès puis recharger la vidéo.
Objectifs
Savoir utiliser les fonctions de manipulation tableaux ;
Savoir retrouver un élément sans son index ;
Ajouter/retirer des éléments d'un tableau.
Mise en situation
Nous avons vu comment parcourir différents types de tableaux, mais il y a d'autres opérations intéressantes à réaliser. En effet les tableaux ne sont pas des structures fixes, leur taille et les éléments qui les composent sont susceptibles d'évoluer dans le temps. On dit que les tableaux sont mutables. Il est possible de trier un tableau, rechercher un élément précis, ou y ajouter des éléments. Pour réaliser ces opérations, la plupart des langages proposent des fonctions clé en main, que nous allons étudier.
Syntaxe : Trier un tableau
En Python et en JavaScript :
la fonction
sort()
applique un tri par défaut à un tableau (croissant),reverse()
inverse l'ordre des éléments.
Attention :
En JavaScript, sort()
trie les nombres dans l'ordre « alphabétique »
et non pas numérique : 11 est devant 7 car le premier caractère 1 vient avant 7.
Exemple :
"""Python."""
names = ['Maria', 'Tarek', 'Anaïs', 'Benjamin']
notes = [12, 7, 18, 14]
# modifie les listes
names.sort() # ['Anaïs', 'Benjamin', 'Maria', 'Tarek']
notes.sort() # [7, 12, 14, 18]
notes.reverse() # [18, 144, 12, 7]
print('Participants:', names)
print('Notes:', notes)
/** JavaScript */
const names = ['Maria', 'Tarek', 'Anaïs', 'Benjamin']
const notes = [12, 7, 18, 14]
names.sort() // ['Anaïs', 'Benjamin', 'Maria', 'Tarek']
notes.sort() // [12, 14, 18, 7]
notes.reverse() // [7, 18, 14, 12]
console.log('Participants:', names)
console.log('Notes:', notes)
Syntaxe : Ajouter et retirer un élément
En Python, append()
permet d'ajouter un élément à la fin et pop()
retire le dernier élément.
En JavaScript, on ajoute à la fin avec push()
et on retire le dernier avec pop().
Exemple :
"""Python."""
travel_plan = ['Paris', 'Berlin', 'Osaka', 'Busan']
print('Escales prévues:', travel_plan)
travel_plan.append('Pekin') # ['Paris', 'Berlin', 'Osaka', 'Busan', 'Pekin']
print('Nouvelle destination:', travel_plan)
travel_plan.pop() # ['Paris', 'Berlin', 'Osaka', 'Busan']
print('Annulation:', travel_plan)
/** JavaScript */
const travelPlan = ['Paris', 'Berlin', 'Osaka', 'Busan']
console.log('Escales prévues:', travelPlan)
travelPlan.push('Pekin') // ['Paris', 'Berlin', 'Osaka', 'Busan', 'Pekin']
console.log('Nouvelle destination:', travelPlan)
travelPlan.pop() // ['Paris', 'Berlin', 'Osaka', 'Busan']
console.log('Annulation:', travelPlan)
Syntaxe : Rechercher un élément
On peut retrouver l'index d'un élément donné dans un tableau.
En Python, la fonction index()
retourne l'index du premier élément correspondant à la recherche.
En JavaScript, la fonction indexOf()
fait la même chose.
Exemple :
"""Python."""
months = ['Janv', 'Fev', 'Mars', 'Avr', 'Mai', 'Juin', 'Juil', 'Août', 'Sept', 'Nov', 'Dec' ]
index = months.index('Août') # retourne 7
print('Août est le', index + 1, 'e mois de l\'année')
/** JavaScript */
const months = ['Janv', 'Fev', 'Mars', 'Avr', 'Mai', 'Juin', 'Juil', 'Août', 'Sept', 'Nov', 'Dec']
const index = months.indexOf('Août') // retourne 7
console.log('Août est le', index + 1, 'e mois de l\'année')
Complément : Documentation
De nombreuses autres fonctions existent et sont documentées ici :
À retenir
Les tableaux sont des structures mutables : des fonctions propres à chaque langage permettent d'y appliquer un grand nombre d'opérations pour manipuler ses éléments.
Impossible d'accéder à la ressource audio ou vidéo à l'adresse :
La ressource n'est plus disponible ou vous n'êtes pas autorisé à y accéder. Veuillez vérifier votre accès puis recharger la vidéo.