Chapitre 10 - Standard higher-order functions Flashcards

1
Q

Qu’est-ce qu’une fonction avec argument prédicat

A

la fonction va utiliser l’argument qui indique true ou false, pour trier, adapter ou agir sur une liste par exemple (>90)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Exemple de fonction avec prédicat

A

exists: la valeur existe au moins une fois
forAll: tous respecte la condition
count: nombre qui satisfait le prédicat
filter: filtre suivant le prédicat
filterNot: inverse de filter
partition: sépare en deux, ceux qui satisfait, et les autres
takeWhile: prendre tant que et on s’arrete
dropWhile: laisser tomber tant que et on arrête

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Différence entre map et foreach

A

map applique une fonction sur une liste et retourne quelque chose
foreach applique une fonction sur une liste mais ne retourne rien

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Différence entre flatMap et map

A

flatMap est utilisé pour appliquer puis filtrer sur une liste
ou alors pour créer des éléments dans une liste ou en enlever, flatMap reduit aussi la liste d’un niveau
map applique sans distinction la fonction

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

le flatMap qui double la valeur sur Liste(1,Liste(2,3)) va donner quoi

A

Liste(2,4,6)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Functors et Monads et map et flatMap

A

map satisfait à la condition functors et flapMap satsisfait à la condition monads

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Que font fold et reduce?

A

Il agisse en séquence sur une liste. fold agit avec une valeur initiale en paramètre, reduce travaille uniquement en utilisant le premier de la liste

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

différence entre foldRight, reduceRight et foldLeft, reduceLeft

A

foldRight, reduceRight travaille en partant de la fin de la liste our retourner à la tête et foldLeft, reduceLeft travaille depuis la tête vers la queue

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

iterate, tabulate, unfold

A

les trois construisent des listes
tabulate => une fonction qui va créer les valeurs
iterate => une fonciton qui va créer les valeurs en tenant compte de celle d’avant
unfold => inverse de fold

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

sortWith, sortBy, maxBy, minBy

A

Utiliser pour comparer
sortWith => utilise la fonction indiquant comment comparer
sortBy => choisir dans un objet ou des listes l’élément qui sert à comparer
maxBy, minBy => choisir la valeur dans l’objet qui permet de savoir ce ki le plus grand ou le plus petit

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

groupBy, groupMap

A

Permet de faire des regroupements suivant des critères déterminés par la fonction en paramètre
groupBy => sépare suivant les valeurs
exemple avec un module, 0 => pair, 1 => impair
groupMap => 1 fonction pour savoir grouper, 1 fonction qui fait du mapping

How well did you know this?
1
Not at all
2
3
4
5
Perfectly