Google Sheets-Kochbuch: Listen zufällig mischen
Erscheinungsbild
fisherYatesShuffle
[Bearbeiten]Mit der Funktion wird eine Liste pseudo-zufällig durcheinandergemischt.
- Aufruf:
=fisherYatesShuffle(Bereich)
- Beispiel:
=fisherYatesShuffle(A2:A12)
- Rückgabe: Die neu gemischte Liste.
/** * Shuffles a list by using the Fisher-Yates shuffle algorithm * https://www.delftstack.com/de/howto/javascript/shuffle-array-javascript/ * * @param {arr} input The range to shuffle. * @return The shuffled range. * @customfunction */ function fisherYatesShuffle(arr) { for(var i =arr.length-1 ; i>0 ;i--){ var j = Math.floor( Math.random() * (i + 1) ); //random index [arr[i],arr[j]]=[arr[j],arr[i]]; // swap } return arr; }
Ausgangsliste | Shuffle |
---|---|
0 | 0 |
1 | 9 |
2 | 2 |
3 | 10 |
4 | 1 |
5 | 4 |
6 | 3 |
7 | 6 |
8 | 8 |
9 | 7 |
10 | 5 |
Die Beispiele auf dieser Seite wurden getestet: 03/2022