Vous êtes sur la page 1sur 68

COURS

D’ALGORITHMIQUE
COMPRENDRE LES FONDEMENTS
DE L'ALGORITHMIQUE
Pr. Hanane GRISSETTE
Hanane.grissette@usmba.ac.ma
Filiere: Intelligence artificiellle
OUTLINES

• Introduction à l'algorithmique et à la programmation.


• Types de données.
• Lecture, écriture de données, et Affectation.
• Structures conditionnelle et répétitive.
• Introduction aux classes et objets.
• Méthodes : paramètres et références.
• Chaîne de caractère et type énuméré.
• Gestion des exceptions et Flux
INFORMATIONS PRATIQUES

• Informations pratiques
• 25 heures de cours ;
25 heures de travaux dirigés ;
• Évaluation :
2 contrôles + examen final
Part I:
INTRODUCTION À L’ALGORITHMIQUE
ET À LA PROGRAMMATION

Filière : Intelligence Artificielle


Pr. Hanane Grissette
Email: Hanane.grissette@usmba.ac.ma
INTRODUCTION À L'ALGORITHMIQUE

• Contenu :
• Définitions et concepts de base en algorithmique.
• Rôles et importance des algorithmes dans l'informatique.
• Notation asymptotique (Big O) et analyse de la complexité.
ALGORITHMIQUE

Algorithmique : Science qui étudie l’application des algorithmes à l’informatique. Le


langage algorithmique permet de mettre en forme l’idée d’un programme avec nos propres
mots, il se détache volontairement de tout langage informatique. Faire un algorithme est le
gros du travail d’un développeur, réfléchir à l’articulation de son futur programme avant de
démarrer l’ordinateur est essentiel et rendra la programmation graphique ou en ligne de code
plus rapide.
• POURQUOI UN COURS D’ "ALGO" ?
Pour obtenir de la «machine» qu’elle effectue un travail à notre place
Problème: expliquer à la «machine» comment elle doit s'y prendre
• Besoins :
• savoir expliciter son raisonnement
• savoir formaliser son raisonnement
• concevoir (et écrire) des algorithmes:
• séquence d’instructions qui décrit comment résoudre un problème
particulier
EN RÉALITÉ: LES ALGORITHMES SONT
PARTOUT
HISTOIRE

• Le terme "algorithme" mot dérivé du nom du mathématicien


al_Khwarizmi qui a vécu au 9ème siècle, était membre d’un académie
des sciences à Bagdad.

• Un algorithme est fondamentalement une série d'étapes bien définies


permettant de résoudre des problèmes ou d'effectuer des calculs.

• Un algorithme prend des données en entrée (Input), exprime un


traitement particulier et fournit des données en sortie (Output).
AL-KHWARIZMI ALGORITHME :
RÉSOLUTION D'ÉQUATIONS DU
DEUXIÈME DEGRÉ

Steps:
1. Obtenir les coefficients a, b et c.
2. Est a égal à zéro ? Calculer le discriminant (Δ)
3. Δ < 0 ?
4. Δ = 0 ?
5. Pas de solutions réelles (Δ < 0)
6. One Real Root (Δ = 0)
7. Calculer les racines
8. Two Real Roots (Δ > 0) :
9. One Real Double Root (Δ = 0) :
10. End (Fin)
DÉFINITIONS

•Algorithme : procédure de calcul bien définie qui prend en entrée une valeur, ou un ensemble
de valeurs, et qui donne en sortie une valeur, ou un ensemble de valeurs. Un algorithme est donc
une séquence d’étapes de calcul qui transforment l’entrée en sortie.

•Un algorithme prend des données en entrée, exprime un traitement particulier et fournit des
données en sortie.
 méthode indépendante de la machine
 méthode indépendante du langage de programmation résolution structurée
 algorithme = description des étapes de la méthode utilisée

• Programme : série d’instructions pouvant s’exécuter en séquence, ou en parallèle (parallélisme


matériel) qui réalise (implémente) un algorithme
POLYVALENCE DES
ALGORITHMES

Les algorithmes conçus pour


des tâches spécifiques
peuvent être appliqués à 01 Par exemple, un algorithme de tri peut
différents types de données ou être utilisé pour trier divers ensembles de
de contextes. 02 données, quelles que soient les données
ou le contexte spécifiques.

03
Cette polyvalence fait des
algorithmes un outil précieux
pour résoudre un large éventail
de problèmes informatiques.
RECAP

1) Un algorithme est une suite d'instructions qui


permet de résoudre un problème donné. Il
doit être précis, fini et déterministe.

2) Les algorithmes sont utilisés dans de nombreux domaines,


notamment en informatique.

3) Un algorithme doit être simple `a comprendre, a mettre en


œuvre et a mettre au point ;

4) Un algorithme doit mettre intelligemment `a contribution


les ressources de l’ordinateur, et plus précisément, il doit
s’executer rapidement.
ALGORITHMIQUE ET PROGRAMMATION :
POUR ELABORER UN ALGORITHME
ALGORITHMIQUE ET PROGRAMMATION :
POUR ELABORER UN ALGORITHME

1. Analyse du problème
2. Conception d’une solution algorithmique: (1) choix de la
représentation des données (2) choix de la méthode
utilisée
3. Développement : programmation
choix du langage de programmation choix de la
machine utilisée
4. Tests

On ne s’intéressera donc ici qu’à la partie algorithmique, ou plutôt aux


structures de données ainsi qu’aux opérations de calcul utilisées en
algorithmique.
ANALYSE DU
PROBLÈME À
COMP REND RE LE P ROB LÈME À
RÉSOUD RE, À IDENTIFIER LES
DONNÉES D'ENTRÉE ET LES
RÉSULTATS ATTENDUS, ET À
DÉTERMINER
L'analyse du problème LESconsiste
CONTRAINTES ET le
à comprendre
LES EXIàGENCES
problème à résoudre, identifier les données
d'entrée et les résultats attendus, et à déterminer les
contraintes et les exigences.
C O N C E PTIO N D E
L’ALGORITHME

La conception de l'algorithme consiste


à déterminer l'approche générale pour
résoudre le problème, à diviser le
problème en sous-problèmes plus
simples et à élaborer un plan détaillé
pour chaque sous-problème.
CODAGE D E
L’A L G O R I T H M E

Le codage de l'algorithme consiste à


transcrire le plan détaillé en un langage
de programmation. Il est important de
choisir un langage de programmation
approprié et de suivre les conventions de
codage.
TEST ET VALIDATION
Le test et la validation de l'algorithme
consistent à vérifier que l'algorithme
résout correctement le problème pour
toutes les données d'entrée possibles. Il
est important de tester l'algorithme avec
des données réelles et de corriger les
erreurs.
BONNES PRATIQUES POUR
ÉLABORER UN ALGORITHME

Les bonnes pratiques pour élaborer un algorithme


sont:
• Utiliser des noms de variables clairs
• Commenter le code
• Utiliser des fonctions et des modules
• Eviter les boucles infinies
• Optimiser le code.
EXEMPLES
D’ALGORITHME

Voici quelques exemples d'algorithme:


• algorithme de tri
• algorithme de recherche
• algorithme de chiffrement
• algorithme d'optimisation
CONCLUSION

L'élaboration d'un algorithme efficace nécessite:


• une analyse minutieuse du problème
• une conception rigoureuse
• un codage soigné
• un test approfondi.

En suivant les bonnes pratiques, vous pouvez créer des algorithmes


performants et fiables.
COMMENT ECRIRE UN ALGORITHME

ETAPES D’UN ALGORITHME


1. Préparation du traitement données
nécessaires à la résolution du problème
2. Traitement
• Résolution pas à pas: Décomposition en sous-
problèmes si nécessaire
3. Edition des résultats
4. impression à l’écran, dans un fichier, etc.
DÉFINIR UN
ALGORITHME :PSEUDOCODE

Déclaration et syntaxe:

Exemple
Algorithme Bonjour
{il dit juste bonjour mais ... en anglais }
Début
afficher('Hello world !!!’)
ALaLigne
Fin
EXERCICE
UN BON ALGORITHME

Un bon algorithme =
Un algorithme correct : i.e. pour chaque instance en entrée, l’algorithme se termine en
produisant la bonne sortie.

⇒ Savoir prouver un algorithme


Un algorithme efficace : mesure de la durée que met un algorithme pour produire un
résultat
⇒ Savoir analyser la complexité d’un algorithme : i.e. détermination de
l’espace mémoire et du temps d’ éxecution nécessaire `a la résolution du problème.

Pour un problème donné, plusieurs algorithmes ou aucun sont possibles. Un


algorithme se termine en un temps fini.
MANIPULER DES DONNÉES EN
PSEUDO-CODE
BASES DE L’ALGORITHMIQUE

Structure de Données Calcul


1. variables 1. Instructions
2. structures 2. conditions
3. tableaux 3. boucles
4. pointeurs 4. fonctions
5. modèles dynamiques 5. récursion

Utiliser et exploiter pour former Un Algorithme


UNE VARIABLE

Définition:
Variable : Elle peuvent stocker des chiffres, des nombres, des caractères
des chaîne de caractères..., dont la valeur peut être modifiée au cours
de l’exécution de l’algorithme

Déclaration et syntaxe:
Exemple
Variable A, B : entier
d : réel

Note:
- Une variable locale ne peut s’utiliser que dans la macro ou le programme principal où elle est déclarée.
- Une variable globale se déclare en début de l’algorithme et peut s’utiliser n’importe où.
DANS LA MÉMOIRE

- Les variables sont stockées en mémoire avec un nom associé à


une adresse mémoire unique. Ce nom est utilisé pour accéder à la
valeur de la variable. Les variables peuvent avoir une portée
locale ou globale dans un programme.

- Les principaux types de variables sont les suivants:


• Nombre, pour les variables qui contiennent des nombres.
• Booléen, pour les variables qui contiennent des valeurs
binaires, qui peuvent valoir vrai ou faux.
• Chaine, qui vient de « chaine de caractères » pour les
variables qui contiennent des caractères alphanumériques, des
mots, des phrases, etc.
UNE CONSTANTE

Définition:
Constante : Elle peuvent stocker des chiffres, des nombres, des caractères des chaîne
de caractères..., dont la valeur ne peut être modifiée au cours de l’exécution de
l’algorithme.

Déclaration et syntaxe:
Exemple
Constante A1 : entier

Note:
- Important: Les noms de variables ne doivent pas contenir d’espaces, d’accents, de caractères spéciaux autre que _.
Les minuscules et les majuscules sont aussi différenciées.
AFFECTATION

Définition:
L'instruction d’affectation est l'instruction qui consiste à donner une valeur à une variable.
L'instruction d’affectation s'écrit en indiquant le nom de la variable, suivi de l'opérateur
d'affectation ← et de la nouvelle valeur à donner à la variable. Cette valeur doit respecter
le type de la variable.

Déclaration et syntaxe: Exemple


•age ← 28
Type = Type • prix ← 5,76
Variable ← Valeur • estMajeur ← faux
• prenom ← "Tom"

Note:
•Pour les variables de type booléen, les valeurs possibles sont vrai et faux.
•Pour les variables de type chaine, les valeurs sont entourées de guillemets “.
ELÉMENTS DE BASE : OPÉRATEURS

Définition:
Un opérateur est un symbole d’opération qui permet d’agir sur des variables ou de
faire des “calculs”
Une opérande est une entité (variable, constante ou expression) utilisée par un opérateur
Une expression est une combinaison d’opérateur(s) et d’opérande(s), elle est évaluée
durant l’exécution de l’algorithme, et possède une valeur (son interprétation) et un type

•Exemples
•prixPromo ← prix * 0,6
• surface ← (base * hauteur)/2
ELÉMENTS DE BASE

Types opérateurs
 Un opérateur est unaire (non) ou binaire (+)
Un opérateur est associé à un type et ne peut être utilisé qu’avec des données de ce
type

Arithmétiques Comparaisons Logiques


Addition : + (ou concaténation) Inférieur : <
Soustraction : - Conjonction : ET
Inférieur ou égale : <=
Multiplication : * Disjonction : OU
Supérieur : >
Division : / Disjonction exclusive : OUX
Supérieur ou égale : >=
Division entière : DIV Négation : NON
Différent : !=
Décalage à droit : >>
Puissance :  Egale : =
Décalage à gauche : <<
Reste de DIV : MOD
ELÉMENTS DE BASE

Priorité des Opérateurs


 En arithmétique les opérateurs * et / sont prioritaires sur + et -
 Pour les booléens, la priorité des opérateurs est non, et, ouExclusif et ou

Opérateur d’affectation
Il permet d’affecter une valeur de l’opérande droit à
une variable (opérande gauche), il est représenté par: ←

<Identificateur> ← <expression> || <constante> || <identificateur>

Exemple:
nom ← "Venus "
val1 ← val2
val ← val ×2
LES I N S T R U C T I O N S D 'E N T R É E S - S O RT I E S E N
P S EU D O - C O D E

Un algorithme peut avoir des interactions avec l’utilisateur et communiquer avec
lui dans les deux sens, les sorties sont des envois de messages a l'utilisateur, les
entrées sont des informations fournies par l'utilisateur.

Il peut demander à l’utilisateur de saisir une information afin de la stocker dans une
variable et peut afficher un résultat (du texte ou le contenu d’une variable)
INSTRUCTION DE LECTURE
Définition:
L'instruction de lecture permet au système d'interagir avec l’extérieur, elle se note avec le
mot-clé Lire.
Cette instruction permet au système numérique :
• de demander à l’utilisateur de lui fournir une information ;
• de récupérer des données qui proviennent d’un capteur ;
• de recevoir des données qui proviennent d’un réseau.

Exemple
Déclaration et syntaxe: • Lire (age)
• Lire (prix)
• Lire(x, y, A)
Lire(liste de variables)

Note:
- La valeur de cette information est affectée à une variable, dont le nom suit le mot-clé Lire.
- La valeur lue prend le type de la variable à laquelle elle est affectée.
INSTRUCTION D’ÉCRITURE

Définition:
L'instruction d'écriture permet au système d'interagir avec l’extérieur, elle se note avec le mot-
clé Écrire.
Cette instruction permet au système numérique :
• d’afficher une information à destination de l’utilisateur ;
• d’envoyer une commande à un actionneur ;
• d’envoyer des données sur un réseau.

Exemple
Déclaration et syntaxe: • Écrire (“Quel est votre nom ?”)
• Écrire (“Votre prénom est ”, prenom, “.”)
Écrire(liste d'expressions)
Note:
- Après le mot Écrire, on indique ce qui sera transmis. Cela peut être la valeur d'une variable, une chaine ou un
mélange des deux.
RECAP

• Dans le cas où le système est un ordinateur, ce qui sera le cas dans les prochains
exemples, l’information est affichée sur l’écran.
• La valeur écrite doit être de type chaine.
• Plusieurs chaines peuvent être écrites à la suite, en les séparant par des virgules.
• Pour ne pas se tromper sur le rôle de l’instruction lecture et le rôle de
l’instruction écriture, il faut se rappeler que l’algorithme est destiné à être
exécuté par un système numérique. C’est donc le point de vue du système qu’il
faut adopter quand on écrit les instructions.
• Quand le système exécute l’instruction Lire, il récupère ainsi une information.
• Quand le système exécute l'instruction Écrire, il écrit quelque chose à l’écran.
EXERCICE

Enonce:
Écrire un algorithme qui utilise les instructions de lecture et d’écriture. Le
système pour lequel cet algorithme est dédié est un ordinateur. Il demande
à l'utilisateur son prénom et son nom, puis le salue à l'écran.

Solution:
Algorithme : Affichage
variables :
prenom, nom : chaines de caractères
DEBUT
Écrire “Quel est votre prénom?”
Lire prenom
Écrire “Quel est votre nom?”
Lire nom
Écrire “Bonjour ”, prénom,“ ”,nom 30

FIN
EXERCICE

Enonce:
Ecrire un algorithme demande a l'utilisateur de saisir une valeur
numérique, ensuite il affiche la valeur saisie, puis la même valeur
incrémentée de 1.

Solution:
Algorithme : Affichage incrément
variables :
a, b : entier
DEBUT
écrire("Saisissez une valeur numérique")
lire(a)
b a+1
écrire("Vous avez saisi la valeur ", a, ". ")
écrire(a, "+ 1 = ", b) 30

FIN
LES FONCTIONS EN PSEUDO-CODE

Les fonctions en pseudo-code d'algorithmique sont essentielles pour organiser


et simplifier la conception de programmes. Elles favorisent:
• la réutilisabilité du code
• la décomposition de problèmes complexes en parties gérables
• facilitent la maintenance
• la collaboration
• les tests unitaires.
UNE FONCTION

Définition:
Une fonction permet de réaliser une tâche complexe, en écrivant un seul mot.
1.Une fonction reçoit aucun, un ou plusieurs arguments, qu’on transmet à la
fonction, et renvoie ensuite un résultat, qui est une valeur.

Un argument est une valeur ou une variable.

Déclaration et syntaxe:

Écrire(liste d'expressions)
Note:
EXERCICE

Enonce:
Ecrire un algorithme qui demande à l'utilisateur la longueur et la largeur
d'un rectangle, il calcule l'aire du rectangle, puis il l’écrit sur l'écran.

Solution:
Algorithme : Aire_Rectangle
variables :
longueur, largeur, aire : nombre
DEBUT
Écrire “Quelle est la longueur du rectangle ?”
Lire longueur
Écrire “Quelle est la largeur du rectangle ?”
Lire largeur
aire ← longueur * largeur
Écrire “L'aire du rectangle vaut ”, chaine(aire),“ m2.”
FIN 30
EXERCICE

Enonce:
Ecrire un algorithme qui propose à l’utilisateur de générer un nombre
aléatoire, entre deux bornes choisies par l’utilisateur
Solution:
Algorithme : Affichage incrément
variables :
borneInf, borneSup, nombreAleatoire : nombre
DEBUT
Écrire “Je vais générer un nombre aléatoire entre deux bornes.”
Écrire “Veuillez entrer la borne inférieure.”
Lire borneInf
Écrire “Veuillez entrer la borne supérieure.”
Lire borneSup
nombreAleatoire ← alea(borneInf,borneSup)
Écrire “Le nombre aléatoire est : “,
30
chaine(nombreAleatoire)
FIN
PLUS D’EXERCICES: A VOUS

• Ecrire les fonctions :


• max(arg1,arg2) qui renvoie le plus grand nombre parmi les deux nombres passés en
arguments.
• alea(arg1,arg2) qui donne un nombre entier aléatoire, compris entre arg1 et arg2.
• long(arg) qui calcule la longueur, en nombre de caractères, d’une chaine.
• concat(arg1,arg2) qui met bout à bout deux chaines.
• chaine(arg) qui convertit un nombre ou un booléen en chaine.
• nombre(arg) qui convertit une chaine en nombre.
FONCTIONS PERSONNALISÉES

Définition:
Une fonction personnalisées commence par le mot-clé Fonction, suivi du nom qu’on donne à la
fonction, puis des éventuels arguments de la fonction. Le mot-clé Renvoyer permet de préciser la
valeur que la fonction renvoie. La fonction peut posséder ses propres variables internes.

Exemple
Voici l’écriture d’une fonction qui permet de calculer le cube d’un nombre.
Elle se nomme cube, et prend un seul argument, de type nombre, qu’on
nomme arg. La valeur renvoyée est la variable résultat, de type nombre.

Variable resultat : nombre


Fonction cube(arg : nombre)
resultat ← arg * arg * arg
Renvoyer resultat
Fin
STRUCTURES DE DONNÉES

Contenu :
• Types de données fondamentaux (entiers, réels,
caractères).
• Structures de données linéaires (tableaux, listes).
• Structures de données avancées (arbres, graphes).
LES STRUCTURE DE DONNÉES

Définition:
Les structures de données en informatique sont des modèles pour organiser des
données. Elles se divisent en deux types : les types de base comme int et char, et
les types composites comme les tableaux. Ces structures sont essentielles pour
stocker et manipuler efficacement des données.

En Algorithmique:
Les algorithmes sont conçus en fonction de ces structures pour résoudre divers problèmes
informatiques. En résumé, les structures de données sont les fondations sur lesquelles les
algorithmes reposent pour traiter des informations de manière efficace.
LES TYPES DE BASE

Définition:
Les données sont finies : elles ont donc une taille maximale. Par exemple, les tailles
usuelles des variables en C sont les suivantes:

Note:
- ASCII est un système de codage devenu un standard pour transmettre l’information de manière numérique.
ELÉMENTS DE BASE

Entier
 C’est le type qui représente des nombres entiers relatifs (int, integer)
Il peut être codé en entier simple sur deux octets ou long sur quatre
octets
Il peut être représenté en décimal (0, - 55…), en hexadécimal (10h,
4Ah…) ou en binaire (% 01001, % 1110)

Réel

 C’est le type qui représente des nombres réels (float)


 Il peut être codé en réel simple sur 4 octets ou double sur 8 octets
Il peut être représenté en forme simple (2.5, -2.0…) ou exponentielle
( 2.1 e4, -6,98 E - 2 …)
ELÉMENTS DE BASE

Caractère
 Il est représenté en code ASCII
 Il permet d’avoir une relation d’ordre
 Exemple ‘A’ < ‘a’ car en ASCII 65<97 et ‘A’<‘Z’ car en ASCII 65<90

Chaîne de caractère
 Elle représente un tableau de caractères
 Plusieurs fonctions prédéfinies : Longueur(S) donne la longueur de S

Booléen
 Il présente les deux valeurs Vrai et Faux (True and False ou 1 et 0)
ELÉMENTS DE BASE

Constante
 Déclaration

Constante : <NomVariable>  <ValeurVariable> : TypeVariable

 Exemple
TYPE STRUCTURÉ
Définition:
Une nouvelle structure regroupant plusieurs variables.
Type structuré = Création d’un nouveau type de
variable = Nom d’un espace en mémoire

Déclaration et syntaxe:
structure date (
entier jour
entier mois
entier annee
)

- L’utilisation se fait en utilisant le point “.”


METHODE
LES STRUCTURES DE CONTRÔLE

• Les structures de contrôle en algorithmique sont des


éléments essentiels pour gérer le déroulement d'un
programme informatique.
• Elles permettent de prendre des décisions en fonction de
conditions spécifiques, d'exécuter des actions de manière
répétée grâce aux boucles, et de contrôler le flux
d'exécution.
• Les structures de contrôle incluent les instructions
conditionnelles, les boucles, et les sauts conditionnels ou
inconditionnels.
STRUCTURE LINÉAIRE

La structure linéaire enchaîne les actions, les unes après les autres sans
rebouclage ni décision.
S T R U C T U R E S R É P É T I T I V E S : ’’ B O U C L E P O U R ’’

- Elles permettent d'exécuter un bloc d'instructions


de manière répétée tant qu'une condition est
satisfaite ou pour un nombre défini d'itérations.

- Les boucles sont utilisées pour automatiser des


tâches répétitives, parcourir des données, et
réaliser des calculs itératifs.

- Les trois types de boucles courants sont la boucle


"pour" (for), la boucle "tant que" (while), et la
boucle "tant que jusqu'à ce que" (do-while).
STRUCTURES RÉPÉTITIVES: ’’BOUCLE TANT QUE’’

Boucle "tant que" (while) :

1. La boucle "tant que" est utilisée lorsque


vous ne connaissez pas nécessairement le
nombre d'itérations à l'avance, mais vous
voulez continuer tant qu'une condition est
vraie.
2. Elle nécessite une condition de
continuation qui est vérifiée avant chaque
itération.
3. Vous devez vous assurer que la condition
finira par devenir fausse pour éviter des
boucles infinies.
STRUCTURES RÉPÉTITIVES: ’’BOUCLE TANT QUE
JUSQ’’

Boucle "tant que jusqu'à ce que" (do-while) :

1. Utilisée lorsque vous souhaitez exécuter au


moins une itération avant de vérifier la
condition de continuation.

2. La condition est vérifiée après chaque


itération, garantissant au moins une exécution.
STRUCTURES ALTERNATIVES: SI

1. Les structures alternatives en


algorithmique, souvent appelées
instructions conditionnelles, servent à
prendre des décisions dans un
programme informatique en fonction de
conditions spécifiques. Elles permettent
d'exécuter différentes séquences de code
en fonction de si une condition est vraie
ou fausse.

2. Les structures alternatives courantes


incluent les instructions "si... alors...
sinon..." (if... then... else...) et les
instructions "selon... cas..." (switch...
case...).
STRUCTURES ALTERNATIVES: SI… SINON

1. "Si" (if) est utilisé pour


exécuter un bloc de code si
une condition est vraie.

2. "Si sinon" (if else) est utilisé


pour exécuter un bloc de
code si la condition est
vraie et un autre bloc si elle
est fausse.
STRUCTURES
ALTERNATIVES: CHOIX
MULTIPLE

1. La structure Choix multiple est utile


lorsque vous avez plusieurs scénarios
possibles en fonction de la valeur d'une
expression.

2. Elle permet de simplifier la gestion de


multiples conditions en remplaçant de
nombreux "si sinon" par une structure
plus lisible et organisée.

3. Cette structure est disponible dans de


nombreux langages de programmation,
bien que sa syntaxe puisse varier
légèrement d'un langage à l'autre.
LES TABLEAUX
ALGORITHMES DE TRI

01 Comparaison des algorithmes de tri.

02 Trier par insertion, tri à bulles, trier par sélection.

03 Tri rapide, tri de fusion, tri de comptage.


RECHERCHE ET ALGORITHMES DE RECHERCHE

Recherche séquentielle. Recherche binaire. Arborescences de recherche binaires.


MERCI. N’HÉSITEZ PAS À POSER VOS QUESTIONS. 😄

Vous aimerez peut-être aussi