Exercices corrigés sur la récursivité (TD 01)

24 Jan 2021 24 Jan 2021 11962 vues ESSADDOUKI Mostafa 7 min de lecture
 Exercice

Trouver le plus petit nombre manquant dans un tableau trié

 Niveau : Intermédiaire

Étant donné un tableau trié de n entiers distincts, où chaque entier est compris entre 0 et m-1, avec m > n, écrire un algorithme qui recherche le plus petit nombre manquant dans ce tableau.

On demande une solution de complexité logarithmique.

Objectif Proposer un algorithme de type recherche dichotomique, de complexité O(log n).
Exemples
Entrée
(0, 1, 2, 6, 9), n = 5, m = 10
Sortie
3
Exemple 2
Entrée
(4, 5, 10, 11), n = 4, m = 12
Sortie
0
 Exercice

Trouver un sous-tableau continu de somme donnée

 Niveau : Débutant

Étant donné un tableau non trié d’entiers non négatifs, écrire une fonction qui trouve un sous-tableau continu dont la somme des éléments est égale à une valeur donnée.

Exemple
Entrée
(1, 4, 20, 3, 10, 5), somme = 33
Sortie
La somme est trouvée entre les indices 2 et 4
Exemple 2
Entrée
(1, 4), somme = 0
Sortie
Aucun sous-tableau trouvé
 Exercice

Trouver la valeur la plus proche d’un nombre donné

 Niveau : Intermédiaire

Étant donné un tableau trié d’entiers, pouvant contenir des doublons et des valeurs négatives, écrire une fonction qui retourne la valeur la plus proche d’un nombre cible.

Exemple
Entrée
(1, 2, 4, 5, 6, 6, 8, 9), objectif = 11
Sortie
9
Exemple 2
Entrée
(2, 5, 6, 7, 8, 8, 9), objectif = 4
Sortie
5
 Exercice

Compter le nombre de façons de rendre la monnaie

 Niveau : Intermédiaire

Étant donné un montant N et un ensemble de pièces S = (S1, S2, ..., Sm) disponibles en quantité infinie, écrire une fonction qui compte le nombre de façons d’obtenir exactement N.

L’ordre des pièces n’a pas d’importance.

Remarque Le programme renvoie uniquement le nombre de solutions et non la liste détaillée des décompositions possibles.
Exemple
Entrée
N = 4 et S = (1, 2, 3)
Sortie
4
Explication : les solutions sont : (1,1,1,1), (1,1,2), (2,2) et (1,3).
Exemple 2
Entrée
N = 10 et S = (2, 5, 3, 6)
Sortie
5
 Exercice

Longueur de la plus longue sous-séquence commune

 Niveau : Intermédiaire

Étant données deux séquences, écrire une fonction qui détermine la longueur de la plus longue sous-séquence commune.

Une sous-séquence apparaît dans le même ordre relatif, mais pas nécessairement de façon contiguë.

Remarque Le programme renvoie uniquement la longueur de la plus longue sous-séquence commune, et non la sous-séquence elle-même.
Exemple
Entrée
s1 = "ABCDGH", s2 = "AEDFHR"
Sortie
3
Explication : une plus longue sous-séquence commune est ADH.
Exemple 2
Entrée
s1 = "AGGTAB", s2 = "GXTXAYB"
Sortie
4
Explication : une plus longue sous-séquence commune est GTAB.
Sortie
// La sortie apparaîtra ici…
Prêt · Ctrl+Entrée pour exécuter

Discussion (0)

Soyez le premier à laisser un commentaire !

Laisser un commentaire

Votre commentaire sera visible après modération.