• Aucun résultat trouvé

/30 /20

N/A
N/A
Protected

Academic year: 2022

Partager "/30 /20 "

Copied!
4
0
0

Texte intégral

(1)

Licence de Mathématiques et Informatique Université de Perpignan Via Domitia Semestre 2

Algorithmique

Contrôle continu de mars 2017

NOM : Prénom : Groupe TD :

Durée : 1 heure. Aucun document ni téléphone autorisé.

Modalités : Répondre uniquement dans les cadres prévus à cet effet. Un barème sur 30 est indiqué à droite de chaque question. La note finale sur 20 est proportionnellement déduite de ce barème. La qualité de la

rédaction sera prise en compte dans la notation. Les questions avec un symbole (?) sont de niveau Objectif 20.

Total :

/30 /20

Exercice 1.(18 points)

/18

1. Ecrire l’en-tête d’une fonctionnbOcc( ) qui compte le nombre d’occurrences d’une valeur donnée dans un ensemble de nvaleurs. On se place dans le cas où l’ensemble de valeurs est un tableau de

caractèress[n],i.e.une chaîne de caractères de longueurn.

/1

2. Ecrire la fonctionnbOcc( )qui applique un algorithme itératif.

Ce n’est pas la peine de ré-écrire la description de la fonction (le commentairedocstringd’en-tête).

/3

1

(2)

3. UtilisernbOcc( )pour compter les nombres d’occurrences suivantes qui serontensuiteaffichées.

— n0: nombre deadanslicence?

— n1: nombre deidanslicence?

— n2: nombre decdanslicence?

/2

4. Justifier le choix de la structure de contrôle utilisée dansnbOcc( ).

/1

5. En déduire la complexité asymptotique, en temps, denbOcc( ). Préciser la mesure et le paramètre de

complexité associés.

/2

6. (?) EcrirenbOccRec( ), version récursive denbOcc( ).

/4

2

(3)

7. UtilisernbOccRec( )pour compter les nombres d’occurrences suivantes qui seront ensuite affichées.

— n0: nombre deadanslicence?

— n1: nombre deidanslicence?

— n2: nombre decdanslicence?

/2

8. (?) En notantnbOccRecparf(pour faire plus court), exhiber l’évolution de la pile des appels àfpour les décomptes suivants.

(a) nombre deedansete.

/2

(b) nombre deadansete.

/1

Exercice 2.(12 points)

/12

1. Écrire la fonction itérative minIt( )qui calcule le minimum des valeurs d’un tableau d’entiers de

longueurnarbitraire :t= [a0, a1,· · · , an 1].

/3

3

(4)

2. Quelle est la complexité (en temps) asymptotique de cette solution itérative ?

/1

3. (?) On dispose maintenant d’une fonctionmin(a,b)qui retourne le minimum de deux entiers de signe quelconqueaetb. Identifier une propriété qui permet de calculer de façon récursive la valeur minimale (de signe quelconque) présente dans le tableaut. Le cas terminal sera explicité et la fonctionmin(a,b)

sera utilisée.

/3

4. (?) Écrire la fonction récursiveminRec( )qui calcule le minimum des valeurs d’un tableau d’entierst de longueurnarbitraire. Cette version utilisera la fonctionmin(a,b).

/3

5. (?) Quelle est la complexité (en temps) asymptotique de cette solution ? Qu’en penser ?

/2

4

Références

Documents relatifs

"[…] en orientant cette activité de telle manière que son produit ait la plus grande valeur, [chaque individu] ne cherche que son propre gain et, dans ce cas comme dans

Appliquer les codes de la politesse dans ses relations avec ses camarades, avec les adultes à l’école et hors de l’école, avec le maître au sein de la classe.. Participer en

Nous avons considéré la fonction F< (x) dans un cercle G de rayon R dans lequel, par hypothèse, elle ne prend aucune des valeurs k i j du Tableau I, et nous avons appelé Mi(r)

[r]

Pour chaque ensemble, écris le nombre d'objets.. Pour chaque ensemble, écris le nombre

Le but de ce projet est d’´ ecrire un programme capable de calculer le plus efficacement possible, le nombre chromatique χ(G) pour une certaine classe de graphes -les

Un fromager vend le beaufort à 8 euros le kilo. p est une fonction linéaire. Son coefficient est …….. La droite représentative a pour équation ………. Son coefficient

Ensemble de définition d’une