ProgresSchool
Faire le quiz
NSIterminale

Graphes : structures et parcours en NSI

Fiche de révision complète pour maîtriser Graphes : structures et parcours en NSI en NSI — méthode, exemples et pièges à éviter.

Un graphe est défini par ses sommets et arêtes, orienté ou non.
Représenter un graphe par une matrice ou une liste d’adjacence selon sa densité.
Le BFS explore niveau par niveau avec une file, le DFS explore en profondeur avec une pile.
Les parcours BFS/DFS sont O(V + E) en temps et en espace.
Les graphes servent à modéliser des réseaux, des labyrinthes ou des problèmes d’optimisation.

Graphes : Structures et algorithmes de parcours

Définitions clés

Un graphe est une structure composée de sommets (ou nœuds) et d’arêtes (ou arcs) reliant ces sommets. On distingue deux types principaux :

  • Graphe non orienté : les arêtes n’ont pas de direction (ex : réseau social).
  • Graphe orienté : les arcs ont une direction (ex : réseau routier à sens unique).

Un graphe peut être représenté par :

  • Matrice d’adjacence : tableau 2D où mat[i][j] = 1 si une arête existe entre i et j.
  • Liste d’adjacence : liste où chaque sommet pointe vers ses voisins (plus efficace pour les graphes peu denses).

Parcours de graphes

Deux algorithmes fondamentaux permettent de parcourir un graphe :

  1. Parcours en largeur (BFS) :

    • Utilise une file (FIFO).
    • Commence par un sommet, explore tous ses voisins avant de passer au niveau suivant.
    • Exemple : Trouver le plus court chemin dans un labyrinthe.
    from collections import deque
    def bfs(graphe, depart):
        file = deque([depart])
        visites = set([depart])
        while file:
            sommet = file.popleft()
            for voisin in graphe[sommet]:
                if voisin not in visites:
                    visites.add(voisin)
                    file.append(voisin)
    
  2. Parcours en profondeur (DFS) :

    • Utilise une pile (LIFO) ou la récursivité.
    • Explore un chemin jusqu’à son extrémité avant de revenir en arrière.
    • Exemple : Détecter un cycle dans un graphe.
    def dfs(graphe, sommet, visites=None):
        if visites is None:
            visites = set()
        visites.add(sommet)
        for voisin in graphe[sommet]:
            if voisin not in visites:
                dfs(graphe, voisin, visites)
    

Applications

  • Réseaux : Trouver des connexions (ex : internet, réseaux sociaux).
  • Jeux vidéo : IA pour les déplacements (ex : labyrinthe).
  • Optimisation : Algorithmes de plus court chemin (Dijkstra).

Complexité

  • BFS/DFS : O(V + E) où V = nombre de sommets, E = nombre d’arêtes.
  • Matrice d’adjacence : O(V²) en espace.
  • Liste d’adjacence : O(V + E) en espace.

Remarque : Les graphes pondérés (avec des coûts sur les arêtes) nécessitent des algorithmes spécifiques comme Dijkstra ou A*.

Sans compte · Gratuit

Teste-toi sur Graphes : structures et parcours en NSI

Réponds directement ici. La correction s'affiche aussitôt, avec la formule et le piège classique à éviter.

Programme officielAucune inscriptionCorrection immédiate
NSITerminale
Question 1
Un satellite en orbite terrestre doit transmettre des données à une station au sol. Le réseau de communication est modélisé par un graphe orienté pondéré où les sommets représentent des relais et les arêtes des liens de communication avec des débits en Mbps. La requête SQL suivante est exécutée pour identifier les relais capables de relayer les données avec un débit supérieur à 50 Mbps. Quelle est la bonne requête ? ```sql SELECT relais FROM reseau_communication WHERE ______; ```

Aucun compte requis — réponds, la correction s'affiche aussitôt.

Ta progression est déjà comptée dans ce navigateur. Crée un compte gratuit pour la retrouver sur tes autres appareils.

Questions fréquentes

Graphes : structures et parcours en NSI : à quel niveau ce cours correspond-il ?

Cette fiche couvre le programme de NSI en Terminale, d'après le Bulletin Officiel de l'Éducation nationale.

Comment utiliser cette fiche de révision ?

Lis-la en entier une première fois sans chercher à retenir, puis relis uniquement la méthode et le piège classique. Enchaîne ensuite sur le quiz en bas de page : c'est en te trompant sur une question, et en lisant pourquoi, que la notion se fixe. Relire une fiche trois fois de suite donne l'impression de savoir, sans le savoir.

Faut-il créer un compte pour lire cette fiche ou faire le quiz ?

Non. Les quiz, les corrections détaillées et les fiches de révision sont accessibles sans créer de compte et sans donner d'adresse e-mail. Le compte gratuit sert uniquement à conserver la progression d'un appareil à l'autre.

Peut-on imprimer cette fiche ?

Oui. Utilise la fonction d'impression de ton navigateur (Ctrl+P, ou Cmd+P sur Mac). La fiche est conçue pour rester lisible sur papier.

Fiche alignée sur le programme officiel de l'Éducation nationaleToutes les fiches →

Programme en vigueur — arrêtés du 19 juillet 2019, applicable en Terminale depuis la rentrée 2020. Voir le texte

Signaler une erreur