title | scripts | addons | ||
---|---|---|---|---|
Examen première session |
|
Durée 2h, documents autorisés
Soit
-
$$f(n) = \mathcal{O}(g(n))$$ implique$$g(n) = \mathcal{O}(f(n))$$ ; -
$$f(n) + g(n) = \Theta(\min (f(n),g(n)))$$ ;
La notation
La notation
-
$$f(n) = \mathcal{O}(g(n))$$ implique$$g(n) = \Omega(f(n))$$ .
On s'intéresse au problème des multiplications matricielles enchaînées. Étant donné une chaîne de
:{:.exercise} Donner le nombre de parenthésages possibles pour la multiplication de
:{:.exercise} Soit cinq matrices
:{:.exercise} On suppose maintenant que les dimensions des matrices
On rappelle que
Dans cette partie nous allons prouver que la multiplication et le carré des matrices carrées ont la même difficulté algorithmique.
:{:.exercise} Prouver que le carré d'une matrice
:{:.exercise} Soit
La clôture transitive d'un graphe
:{:.exercise} Dessiner la clôture transitive du graphe ci-dessous.
<script> var nodes = [{x:10,y:150},{x:40,y:50},{x:200,y:50},{x:100,y:150},{x:100,y:50},{x:200,y:150},{x:150,y:100}]; var edges = [{f:0,t:1}, {f:1,t:4}, {f:2,t:5},{f:2,t:6}, {f:3,t:4}]; document.on("DOMContentLoaded", function() { var g = d3.select("#graph"); g.selectAll("line") .data(edges) .enter() .append("line") .attr("x1", function(d) { return nodes[d.f].x }) .attr("y1", function(d) { return nodes[d.f].y }) .attr("x2", function(d) { return nodes[d.t].x }) .attr("y2", function(d) { return nodes[d.t].y }) .style("stroke", "#11e"); g.selectAll("circle .nodes") .data(nodes) .enter() .append("svg:circle") .attr("class", "nodes") .attr("cx", function(d) { return d.x; }) .attr("cy", function(d) { return d.y; }) .attr("r", "10px") .attr("fill", "black"); g.selectAll(".n") .data(nodes) .enter() .append("text") .attr("class","n") .attr("x", function(d) { return d.x; }) .attr("y", function(d) { return d.y; }) .text(function(d,i) { return String.fromCharCode(97+i); }) .style({"font-size":"60%","fill":"white","text-anchor": "middle", "dominant-baseline": "middle" }); }); </script>:{:.exercise} Écrire les matrices d'adjacence du graphe et de sa clôture.
Les matrices booléennes sont les matrices à coefficients
:{:.exercise} En voyant la matrice d'adjacence du graphe précédent comme une matrice booléenne, en calculer le carré. Dessiner le graphe correspondant.
:{:.exercise} Prouver que le carré de la matrice d'adjacence d'un
graphe
:{:.exercise} Généraliser par induction à la
:{:.exercise} Donner un algorithme de complexité
On considère le programme linéaire suivant :
Minimiser
$$-x - 2y$$
Sous
$$\begin{array}{c r r r} x& & ≤& 3,\ 2x& + y& ≤& 7,\ -x& + 2y& ≤& 4, \end{array}$$
$$x,y≥0$$ .
:{:.exercise} Mettre le programme linéaire sous forme relaxée en ajoutant des variables de relaxation.
:{:.exercise} Trouver la solution du programme linéaire en détaillant les étapes de l'algorithme du simplexe.