TD
Exercice 3 : Détection de doublons
fonction a_doublons(tab : tableau d’entiers, n : Entier) : Booléen
Début
pour i allant de 0 à n-2
pour j allant de i+1 à n-1
si tab[i] = tab[j] alors
retourner Vrai
fin si
fin pour
fin pour
retourner Faux
Fin fonction
Exercice 4 : Vérification si le tableau est trié
fonction tri(tab : tableau d’entiers, n : Entier) : Booléen
Début
pour i allant de 0 à n-2
si tab[i] > tab[i+1] alors
retourner Faux
fin si
fin pour
retourner Vrai
Fin fonction
Exercice 5 : Histogramme de fréquences
fonction histogramme(tab : tableau d’entiers, n : Entier)
Début
déclarer freq[10] : tableau d'entiers ← {0, 0, ..., 0}
pour i allant de 0 à n-1
freq[tab[i]] ← freq[tab[i]] + 1
fin pour
pour i allant de 0 à 9
si freq[i] ≠ 0 alors
afficher i, ": "
pour j allant de 1 à freq[i]
afficher "*"
fin pour
afficher nouvelle ligne
fin si
fin pour
Fin fonction
Exercice 6 : Rotation d’un tableau vers la droite
fonction rotation_tableau(tab : tableau d’entiers, n, k : Entiers)
Début
déclarer temp[n] : tableau d’entiers
pour i allant de 0 à n-1
temp[(i + k) mod n] ← tab[i]
fin pour
pour i allant de 0 à n-1
tab[i] ← temp[i]
fin pour
Fin fonction
Exercice 7 : Recherche d’un sous-tableau
fonction rechercher_sous_tableau(tab : tableau d’entiers, n : Entier,
sous_tab : tableau d’entiers, m : Entier) : Booléen
Début
pour i allant de 0 à n - m
déclarer trouvé ← Vrai
pour j allant de 0 à m-1
si tab[i + j] ≠ sous_tab[j] alors
trouvé ← Faux
sortir du pour
fin si
fin pour
si trouvé = Vrai alors
retourner Vrai
fin si
fin pour
retourner Faux
Fin fonction
Exercice 8 : Longueur de la plus longue sous-chaîne sans doublons
fonction longueur_sous_chaine_unique(chaine : tableau de caractères, n : Entier) : Entier
Début
déclarer max ← 0
pour i allant de 0 à n-1
déclarer utilisé[256] : tableau de booléens ← Faux
déclarer longueur ← 0
pour j allant de i à n-1
si utilisé[chaine[j]] = Vrai alors
sortir du pour
sinon
utilisé[chaine[j]] ← Vrai
longueur ← longueur + 1
fin si
fin pour
si longueur > max alors
max ← longueur
fin si
fin pour
retourner max
Fin fonction