From 080abb514500a2e0e33628aa68aecbfeab83f595 Mon Sep 17 00:00:00 2001
From: Orestis <orestis.malaspinas@pm.me>
Date: Tue, 15 Nov 2022 19:09:02 +0100
Subject: [PATCH] updated pseudocodes to rfench

---
 slides/cours_7.md | 88 ++++++++++++++++++++++-------------------------
 1 file changed, 41 insertions(+), 47 deletions(-)

diff --git a/slides/cours_7.md b/slides/cours_7.md
index 9da3119..3c2fea0 100644
--- a/slides/cours_7.md
+++ b/slides/cours_7.md
@@ -22,11 +22,11 @@ double tab[N];
 . . .
 
 ```C
-double moyenne = 0.0;
+double mean = 0.0;
 for (int i = 0; i < N; ++i) { // N assignations
-    moyenne += tab[i];        // N additions
+    mean += tab[i];        // N additions
 }
-moyenne /= N; // O(N)
+mean /= N; // O(N)
 ```
 
 . . .
@@ -36,12 +36,12 @@ moyenne /= N; // O(N)
 . . .
 
 ```C
-double moyenne = moyenne(N, tab); // O(N)
-double ecart = 0.0;
+double mean = moyenne(N, tab); // O(N)
+double dev = 0.0;
 for (int i = 0; i < N; ++i) {
-    ecart += pow(tab[i] - moyenne, 2); // N tours
+    dev += pow(tab[i] - moyenne, 2); // N tours
 }
-ecart = sqrt(ecart); ecart /= N; // O(2*N) = O(N)
+dev = sqrt(dev); dev /= N; // O(2*N) = O(N)
 ```
 
 # Tri par insertion (1/3)
@@ -59,7 +59,7 @@ triés du tableau.
 
 # Tri par insertion (2/3)
 
-## Exercice: Proposer un algorithme
+## Exercice: Proposer un algorithme (en C)
 
 . . .
 
@@ -167,16 +167,14 @@ int low, high; // les indices min/max des tableaux à trier
 
 ## Pseudocode: quicksort
 
-```C
-void quicksort(array, low, high) {
-    if (more than 1 elems) {
-        pivot_ind = partition(array, low, high);
-        if (something left of pivot)
-            quicksort(array, low, pivot_ind - 1);
-        if (something right of pivot)
-            quicksort(array, pivot_ind + 1, high);
-    }
-}
+```python
+rien quicksort(entier tableau[], ind_min, ind_max)
+    si (longueur(tab) > 1)
+        ind_pivot = partition(array, ind_min, ind_max)
+        si (longueur(tableau[0:ind_pivot-1]) != 0)
+            quicksort(tableau, ind_min, pivot_ind - 1);
+        si (longueur(tableau[ind_pivot+1:ind_max-1]) != 0)
+            quicksort(tableau, ind_pivot + 1, ind_max)
 ```
 
 # Tri rapide ou quicksort (5/8)
@@ -184,20 +182,20 @@ void quicksort(array, low, high) {
 ## Pseudocode: partition
 
 ```C
-int partition(array, low, high) {
-    pivot = array[high]; // choix arbitraire
-    i = low;
-    j = high-1;
-    while i < j {
-      en remontant i trouver le premier élément > pivot;
-      en descendant j trouver le premier élément < pivot;
-      swap(array[i], array[j]);
-      // les plus grands à droite
-      // mettre les plus petits à gauche
-    }
+entier partition(entier tableau[], entier ind_min, entier ind_max)
+    pivot = array[ind_max]; // choix arbitraire
+    i = ind_min;
+    j = ind_max-1;
+    tant que i < j:
+        en remontant i trouver le premier élément > pivot;
+        en descendant j trouver le premier élément < pivot;
+        échanger(array[i], array[j]);
+        // les plus grands à droite
+        // mettre les plus petits à gauche
+    
     // on met le pivot "au milieu"
-    swap(array[i], array[pivot]);     
-    return i; // on retourne l'indice pivot
+    échanger(array[i], array[pivot]);     
+    retourne i; // on retourne l'indice pivot
 }
 ```
 
@@ -259,10 +257,10 @@ int partition(int size, int array[size], int first, int last) {
     int i = first - 1, j = last;
     do {
         do {
-            i++;
+            i += 1;
         } while (array[i] < pivot && i < j);
         do {
-            j--;
+            j -= 1;
         } while (array[j] > pivot && i < j);
         if (j > i) {
             swap(&array[i], &array[j]);
@@ -322,20 +320,16 @@ int partition(int size, int array[size], int first, int last) {
 . . .
 
 ```C
-void bubble_sort(int size, int array[]) {
-    for i in [size-1, 1] {
-        sorted = true;
-        for j in [0, i-1] {
-            if (array[j] > array[j+1]) {
-                swap(array[j], array[j+1]);
-                sorted = false;
-            }
-        }
-        if (sorted) {
-            return;
-        }
-    }
-}
+rien tri_a_bulles(entier tableau[])
+    pour i de longueur(tableau)-1 à 1:
+        trié = vrai
+        pour j de 0 à i-1:
+            si (tableau[j] > tableau[j+1])
+                swap(array[j], array[j+1])
+                trié = faux
+        
+        si trié
+            retourner
 ```
 
 # Tri à bulle (4/4)
-- 
GitLab