diff --git a/TP2/Rplots.pdf b/TP2/Rplots.pdf
index 90a59a802986be5dab643963e80dfe273326847f..d890bdf267629e37a162fcce705f5c56e4bc8db9 100644
Binary files a/TP2/Rplots.pdf and b/TP2/Rplots.pdf differ
diff --git a/TP2/fusion.R b/TP2/fusion.R
index 26d75eb2675cf8d2dbb0e1b152c929743f4989c5..b64e5b999066f2b30b92b715ac3a4b8cb362e1d4 100755
--- a/TP2/fusion.R
+++ b/TP2/fusion.R
@@ -4,4 +4,4 @@ ggplot(perf, aes(x=taille, y=temps, group=typeTableau, colour=as.character(algo)
 geom_point() + geom_smooth() +
  ggtitle("Graphes Comparaison Algos")
 
-ggsave("grapheFusion.png")
+ggsave("graphe.png")
diff --git a/TP2/fusion.dat b/TP2/fusion.dat
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..d72f00ff1d19c5b3b1ce201f313fea89385b35a2 100755
--- a/TP2/fusion.dat
+++ b/TP2/fusion.dat
@@ -0,0 +1,61 @@
+iTest	taille	temps	mem	algo	typeTableau
+1	50000	1.86	1344	i	a
+1	70000	3.56	1652	i	a
+1	90000	5.88	1892	i	a
+1	50000	2.34	1396	i	m
+1	70000	4.52	1728	i	m
+1	90000	7.58	1876	i	m
+2	50000	1.85	1388	i	a
+2	70000	3.54	1644	i	a
+2	90000	5.87	1660	i	a
+2	50000	2.30	1392	i	m
+2	70000	4.50	1736	i	m
+2	90000	7.42	1612	i	m
+3	50000	1.84	1388	i	a
+3	70000	3.54	1572	i	a
+3	90000	5.88	1884	i	a
+3	50000	2.35	1388	i	m
+3	70000	4.49	1744	i	m
+3	90000	7.43	1892	i	m
+4	50000	1.81	1288	i	a
+4	70000	3.53	1660	i	a
+4	90000	5.86	1612	i	a
+4	50000	2.30	1336	i	m
+4	70000	4.50	1656	i	m
+4	90000	7.42	1576	i	m
+5	50000	1.81	1352	i	a
+5	70000	3.54	1652	i	a
+5	90000	5.87	1552	i	a
+5	50000	2.30	1388	i	m
+5	70000	4.48	1664	i	m
+5	90000	7.43	1840	i	m
+6	50000	1.83	1400	i	a
+6	70000	3.54	1608	i	a
+6	90000	5.86	1664	i	a
+6	50000	2.30	1564	i	m
+6	70000	4.50	1552	i	m
+6	90000	7.43	1608	i	m
+7	50000	1.81	1396	i	a
+7	70000	3.54	1664	i	a
+7	90000	5.86	1616	i	a
+7	50000	2.27	1356	i	m
+7	70000	4.48	1664	i	m
+7	90000	7.43	1892	i	m
+8	50000	1.81	1288	i	a
+8	70000	3.54	1580	i	a
+8	90000	5.85	1644	i	a
+8	50000	2.29	1292	i	m
+8	70000	4.49	1612	i	m
+8	90000	7.40	1616	i	m
+9	50000	1.81	1464	i	a
+9	70000	3.58	1728	i	a
+9	90000	5.87	1616	i	a
+9	50000	2.29	1344	i	m
+9	70000	4.50	1652	i	m
+9	90000	7.43	1776	i	m
+10	50000	1.81	1336	i	a
+10	70000	3.55	1552	i	a
+10	90000	5.85	1964	i	a
+10	50000	2.33	1388	i	m
+10	70000	4.49	1608	i	m
+10	90000	7.42	1600	i	m
diff --git a/TP2/fusion.sh b/TP2/fusion.sh
index 1c1fc1d738ebfaa76ca2b8957d7a1d29da33a91c..68ef25319035b09d04cdac2a1c0db18df5e25ef5 100755
--- a/TP2/fusion.sh
+++ b/TP2/fusion.sh
@@ -10,12 +10,12 @@ do
   #taille=$(( `od -An -N4 -tu < /dev/urandom` % 1000000))
   #taille=1000000
 
-  for algo in 'r' 'f'
+  for algo in 'i'
   do
 
-    for typeTableau in 'r'
+    for typeTableau in 'a' 'm'
       do
-        for taille in 100000 200000 300000
+        for taille in 50000 70000 90000
           do
             res=`( /usr/bin/time -f "%U\t%M" ./main $algo $taille $typeTableau $affichage > /dev/null ) 2>&1`
             echo -e "$iTest\t$taille\t$res\t$algo\t$typeTableau"
diff --git a/TP2/graphe.png b/TP2/graphe.png
index a7c352dccbb15f602a66615636d27a55153634f3..b3aa9edf01a7f0552332693a41556aaed96c3b91 100644
Binary files a/TP2/graphe.png and b/TP2/graphe.png differ
diff --git a/TP2/triRapideAleatoire.png b/TP2/triRapideAleatoire.png
deleted file mode 100644
index 1a1f97ec06723420b6df651ed86c82494f7bb844..0000000000000000000000000000000000000000
Binary files a/TP2/triRapideAleatoire.png and /dev/null differ
diff --git a/TP2/triRapideAleatoirePivotLast.png b/TP2/triRapideAleatoirePivotLast.png
new file mode 100644
index 0000000000000000000000000000000000000000..12e3a9069b7079f395a0760d6e5b1c841d3be0d1
Binary files /dev/null and b/TP2/triRapideAleatoirePivotLast.png differ
diff --git a/TP2/triRapideAleatoirePivotMiddle.png b/TP2/triRapideAleatoirePivotMiddle.png
new file mode 100644
index 0000000000000000000000000000000000000000..095d128066982d0d8d764594dfc0854317690cbb
Binary files /dev/null and b/TP2/triRapideAleatoirePivotMiddle.png differ
diff --git a/TP2/triRapideMiddle.png b/TP2/triRapideMiddle.png
deleted file mode 100644
index 1a1f97ec06723420b6df651ed86c82494f7bb844..0000000000000000000000000000000000000000
Binary files a/TP2/triRapideMiddle.png and /dev/null differ
diff --git a/TP2/triRapideMiddlePivotLast.png b/TP2/triRapideMiddlePivotLast.png
new file mode 100644
index 0000000000000000000000000000000000000000..d224fe41af957b53faf1acc40a2e80f8aa21a314
Binary files /dev/null and b/TP2/triRapideMiddlePivotLast.png differ
diff --git a/TP2/triRapideMiddlePivotMiddle.png b/TP2/triRapideMiddlePivotMiddle.png
new file mode 100644
index 0000000000000000000000000000000000000000..a172b89b18c85c73c67b1e7745ddb1607331af75
Binary files /dev/null and b/TP2/triRapideMiddlePivotMiddle.png differ
diff --git a/TP2/tri_rapide.c b/TP2/tri_rapide.c
index 41eaa3b77e77dd30d53a041ca5f88490cf06a16d..163922cd965a9aba7c16e9bcc7eabf4d6f2f6a63 100644
--- a/TP2/tri_rapide.c
+++ b/TP2/tri_rapide.c
@@ -17,7 +17,11 @@ void sousTriRapide(long* A, size_t first, size_t size){
 }
 
 size_t partition(long* A, size_t first, size_t size) {
+    //long middle = (size-1) / 2;
+    //long pivot = A[middle];
+
     long pivot = A[size-1];
+
     size_t i = first;
     for(int j = first; j+2 <= size; j++){
         if(A[j] <= pivot){