vault backup: 2023-09-15 14:51:50

This commit is contained in:
Louis Gallet 2023-09-15 14:51:50 +02:00
parent b5ec7a1ce4
commit c297a59106
Signed by: lgallet
SSH Key Fingerprint: SHA256:qnW7pk4EoMRR0UftZLZQKSMUImbEFsiruLC7jbCHJAY
3 changed files with 18 additions and 5 deletions

View File

@ -13,7 +13,7 @@
"state": {
"type": "markdown",
"state": {
"file": "Algo/Séminaire/Exercices seminaire.md",
"file": "Algo/Séminaire/Chapter 5 - Recursivity.md",
"mode": "source",
"source": false
}
@ -85,7 +85,7 @@
"state": {
"type": "backlink",
"state": {
"file": "Algo/Séminaire/Exercices seminaire.md",
"file": "Algo/Séminaire/Chapter 5 - Recursivity.md",
"collapseAll": false,
"extraContext": false,
"sortOrder": "alphabetical",
@ -102,7 +102,7 @@
"state": {
"type": "outgoing-link",
"state": {
"file": "Algo/Séminaire/Exercices seminaire.md",
"file": "Algo/Séminaire/Chapter 5 - Recursivity.md",
"linksCollapsed": false,
"unlinkedCollapsed": true
}
@ -125,7 +125,7 @@
"state": {
"type": "outline",
"state": {
"file": "Algo/Séminaire/Exercices seminaire.md"
"file": "Algo/Séminaire/Chapter 5 - Recursivity.md"
}
}
},
@ -158,8 +158,8 @@
},
"active": "0d2d422aa24bb900",
"lastOpenFiles": [
"Algo/Séminaire/Introduction.md",
"Algo/Séminaire/Exercices seminaire.md",
"Algo/Séminaire/Introduction.md",
"Algo/Séminaire/Chapter 5 - Recursivity.md",
"Algo/Séminaire/Chapter 3 - Case analysis.md",
"Algo/Séminaire/Chapter 2 - Functions.md",

View File

@ -102,3 +102,6 @@ An accumulator is a thing that try to get our result. In CAML we trying to not u
| n -> rev (inv*10 + n mod 10)(n/10)
in rev 0 n;;
```
## 4.3. Complexity
Exemple with egypt (4.10) vs multiply (4.6)

View File

@ -355,4 +355,14 @@ let rec multiply x y =
multiply (x / 2) (y * 2)
else
y + multiply (x / 2) (y * 2)
(*correction*)
# let egypt a b =
let (a, b) = if a > b then (a,b) else (b,a) in
let rec eg = function
| 0 -> 0
| b -> 2*eg(b/2) + (if b mod 2 = 0 then 0 else a)
in
eg b;;
```