Base de données relationnelle : Système d'organisation des données en tables liées par des relations.
- Identifier les entités et leurs attributs
- Déterminer les relations entre entités
- Appliquer les règles de normalisation
- Créer les tables avec clés primaires et étrangères
Tables : Livres, Emprunts, Adhérents
Relations : Un adhérent peut emprunter plusieurs livres
ID_Livre (clé primaire), Titre, Auteur, ISBN, Genre
ID_Adhérent (clé primaire), Nom, Prénom, Email, Date_adhésion
ID_Emprunt (clé primaire), ID_Livre (clé étrangère), ID_Adhérent (clé étrangère), Date_emprunt, Date_retour
Lien vers la clé primaire d'une autre table
Quelles informations doivent être stockées ?
Livres, Adhérents, Emprunts sont les entités principales
Un adhérent peut emprunter plusieurs livres, un livre peut être emprunté par plusieurs adhérents
CREATE TABLE Livres (
ID_Livre INT PRIMARY KEY,
Titre VARCHAR(255),
Auteur VARCHAR(255),
ISBN VARCHAR(13)
);
| Table | Attributs | Clé primaire |
|---|---|---|
| Livres | ID_Livre, Titre, Auteur, ISBN | ID_Livre |
| Adhérents | ID_Adhérent, Nom, Prénom, Email | ID_Adhérent |
| Emprunts | ID_Emprunt, ID_Livre, ID_Adhérent, Date | ID_Emprunt |
• Clé primaire : Identifiant unique dans une table
• Clé étrangère : Crée une liaison entre tables
• Normalisation : Éliminer les redondances
Complexité algorithmique : Mesure de l'efficacité d'un algorithme en fonction de la taille des données.
Comparaison de chaque paire d'éléments adjacents
Échange si nécessaire
Complexité linéaire - proportionnelle à la taille
Complexité quadratique - augmentation rapide
Complexité logarithmique - très efficace
O(n²) dans le pire des cas
Effectuée n fois (taille du tableau)
Effectuée n-1, n-2, ..., 1 fois
(n-1) + (n-2) + ... + 1 = n(n-1)/2 = O(n²)
Tri à bulles : O(n²) dans le pire des cas
Tri rapide : O(n log n) en moyenne
Tri fusion : O(n log n) dans tous les cas
• Notation Big O : Bornes supérieures de la complexité
• Meilleur cas : Situation optimale
• Pire cas : Situation la plus défavorable
Arbre binaire : Structure de données hiérarchique avec un nœud racine et deux sous-arbres.
Chaque nœud a au plus deux enfants
Valeur gauche < valeur nœud < valeur droite
Point d'entrée de l'arbre
Noeuds sans enfants
Longueur du chemin le plus long
O(log n) pour un arbre équilibré
Chaque nœud contient une valeur et des pointeurs vers les enfants
Comparer avec la racine, aller à gauche ou droite selon la valeur
Parcourir l'arbre selon les règles de tri
Structure : Noeud(value, left, right)
Insertion : O(log n) - O(n) selon équilibre
Recherche : O(log n) - O(n) selon équilibre
Suppression : O(log n) - O(n) selon équilibre
• Arbre équilibré : Hauteur minimale pour optimiser les opérations
• Parcours infixé : Gauche, Racine, Droite
• Applications : Indexation, compilation, jeux
Protocole TCP/IP : Ensemble de règles permettant la communication entre ordinateurs sur Internet.
Application, Transport, Internet, Liaison
Chaque couche a des responsabilités spécifiques
HTTP, FTP, SMTP - interaction utilisateur
TCP, UDP - fiabilité et routage
IP - adressage et routage
Ethernet, Wi-Fi - transmission physique
Chaque couche ajoute son en-tête
Paquets routés selon les adresses IP
Chaque couche retire son en-tête
Couche Application : Services réseau
Couche Transport : TCP/UDP
Couche Internet : IP, ICMP
Couche Liaison : Ethernet, Wi-Fi
• TCP : Connexion orientée, fiable
• UDP : Sans connexion, rapide
• IP : Adresse unique pour chaque appareil
Sécurité informatique : Ensemble de mesures pour protéger les systèmes d'information.
Utilisation d'une paire de clés publique/privée
Fondement de la signature numérique
Chiffrement des données
Vérification de l'identité
Protection contre les modifications
Impossible de nier l'envoi
Choix de deux grands nombres premiers
Basé sur la factorisation difficile
Utilisation des clés pour sécuriser les communications
Chiffrement symétrique : AES, DES
Chiffrement asymétrique : RSA, ECC
Hachage : SHA-256, MD5
Signature numérique : basée sur RSA
• Clé privée : Gardée secrète
• Clé publique : Partagée librement
• HTTPS : SSL/TLS pour la sécurité web
- Normalisation : Éliminer les redondances dans les bases de données
- Complexité : Mesurer l'efficacité des algorithmes
- Arbres équilibrés : Optimiser les opérations de recherche
- Protocoles : Règles de communication entre systèmes
- Sécurité : Protéger les systèmes et données
- Les bases de données relationnelles organisent les données en tables liées
- La complexité algorithmique mesure l'efficacité en fonction de la taille des données
- Les structures de données influencent directement la performance
- Les protocoles assurent la communication fiable entre systèmes
- La sécurité est essentielle dans toutes les applications modernes
- Listes chaînées : Accès séquentiel, insertion facile
- Piles : LIFO (Last In First Out)
- Files : FIFO (First In First Out)
- Arbres : Hiérarchie, recherche rapide
- Graphes : Relations complexes entre éléments
- Tri par sélection : O(n²) - simple mais lent
- Tri rapide : O(n log n) en moyenne - rapide
- Tri fusion : O(n log n) dans tous les cas - stable
- Recherche linéaire : O(n) - simple
- Recherche binaire : O(log n) - rapide mais trié