La concaténation de deux tuples avec + place leurs éléments bout à bout, par exemple (1,2,3) + (4,0) donne (1,2,3,4,0).
L'affectation parallèle permet d'écrire (a,b,c) = (1,2,3) et d'échanger deux valeurs avec (a,b) = (b,a).
Tuple immuable, affectation parallèle modifiable
★ À maîtriser
Les indices négatifs d'une liste commencent à la fin : L[-1] désigne le dernier élément et L[-2] l'avant-dernier.
Pour une liste L, L[a:b] extrait les éléments d'indice a inclus à b exclu, tandis que L[a:], L[:b], L[:] et L[:-1] sélectionnent respectivement la fin depuis a, le début jusqu'à b-1, toute la liste et toute la liste sauf le dernier élément.
Compléments
Une liste indexée comme une chaîne, avec une fin repérée par -1
Pile LIFO : dernier entré, file FIFO : premier entré
Le tri par sélection cherche le maximum dans la partie non triée, l'échange avec le dernier élément de cette partie, puis recommence vers la gauche.
Le tri par insertion parcourt la liste et insère chaque élément à sa position dans la partie déjà triée en décalant les éléments supérieurs.
📌 La recherche séquentielle examine les éléments successivement, tandis que la recherche dichotomique divise par deux une liste triée à chaque étape.
Comparer, sélectionner, insérer puis rechercher séquentiellement ou par dichotomie
📌 La fonction open(chemin, mode) ouvre un fichier ; le mode r lit, w écrit en écrasant ou crée le fichier, a ajoute sans écraser et r+ permet la lecture et l'écriture.
Un fichier ouvert doit être fermé avec close() à la fin du programme.
read(t) lit t caractères à partir de la position courante, readline() lit une ligne et readlines() renvoie la liste de toutes les lignes.
Ouvrir, lire ou écrire, puis fermer
La fonction array() transforme une liste ou une liste de listes en tableau NumPy, et append, delete et insert permettent respectivement d'ajouter, supprimer et insérer des éléments.
La fonction reshape transforme la forme d'un tableau sans changer ses éléments, par exemple arange(15).reshape(5,3) produit 5 lignes et 3 colonnes.
dot(A,B) calcule le produit matriciel de deux matrices, tandis que vdot(A,B) calcule le produit scalaire de deux vecteurs.
Un tableau devient une matrice par reshape puis matrix
Tracer, nommer, quadriller, légender, afficher
Les formes de récursivité sont:
Le tri fusion divise récursivement une liste jusqu'à obtenir des listes d'un élément, puis fusionne les sous-listes triées.
Cas de base atteint → appels récursifs arrêtés
📌 Le parcours préfixe visite la racine puis les sous-arbres gauche et droit selon NGD, le parcours infixe suit GND et le parcours suffixe suit GDN.
Préfixe NGD, infixe GND, suffixe GDN
★ À maîtriser
Compléments
Maximier : tamiser, échanger, réduire
📌 Pour obtenir une notation O, on ignore les constantes multiplicatives et additives et on conserve seulement le terme dominant.
Taille de l’entrée → opérations exécutées → classe de complexité
📐 Formule - Dans un graphe non orienté, la somme des degrés des sommets vaut , où a est le nombre d'arêtes.
📌 Un graphe connexe possède une chaîne entre toute paire de sommets, et il admet un cycle eulérien si et seulement si tous ses sommets sont de degré pair.
Le parcours en profondeur DFS marque un sommet, visite récursivement chaque voisin non visité, puis recommence depuis un nouveau sommet si des sommets restent non visités.
Le parcours en largeur BFS utilise une file pour visiter d'abord les sommets à une distance donnée, puis ceux du niveau suivant.
DFS explore une branche, BFS explore un niveau
| Structure | Principe | Opérations ou accès |
|---|---|---|
| Tuple | Non mutable | Concaténation, clonage, slicing |
| Liste | Séquence modifiable | Indexation, slicing, append, tri |
| Pile | LIFO | Empiler et dépiler au sommet |
| File | FIFO | Insérer à la queue, retirer à la tête |
| Dictionnaire | Association clé-valeur | Ajouter, modifier ou supprimer par clé |
| Parcours | Ordre | Structure concernée |
|---|---|---|
| Préfixe | Racine, gauche, droite | Arbre |
| Infixe | Gauche, racine, droite | Arbre |
| Suffixe | Gauche, droite, racine | Arbre |
| DFS | Profondeur récursive | Graphe |
| BFS | Niveaux successifs | Graphe |
Teste tes connaissances sur Algorithmique et structures de données avec 39 questions à choix multiples et corrections détaillées.
1. Quelle propriété distingue un tuple d’une liste en Python ?
2. Quel est le résultat de l’expression en Python ?
Mémorisez les concepts clés de Algorithmique et structures de données avec 70 flashcards interactives.
Qu'est-ce qu'un tuple en programmation ?
Une structure non mutable dont le contenu ne peut pas être modifié.
Que fait l'opérateur + entre deux tuples ?
Il place leurs éléments bout à bout.
Quel est le résultat de (1,2,3) + (4,0) ?
(1,2,3,4,0)
Importe ton cours et l'IA génère fiches, QCM et flashcards en 30 secondes.
Générateur de fiches