Wie mischt man eine List<T> in C# zufällig?
Hallo zusammen! Ich bin ein C#-Anfänger und habe ein Problem. Ich muss die Elemente in einer `List` zufällig mischen. Ich schreibe eine Anwendung für ein Kartenspiel und muss das Kartendeck mischen.
Ich habe eine `List deck`, die ich mit Karten fülle. Ich habe `Random` ausprobiert, aber ich schaffe es nicht, die Elemente richtig zu mischen.
Hier ist mein aktueller Code:
```csharp
List numbers = new List { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
Random rnd = new Random();
// Mein Versuch zu mischen
for (int i = 0; i < numbers.Count; i++)
{
int randomIndex = rnd.Next(numbers.Count);
numbers[i] = numbers[randomIndex]; // Das kopiert nur den Wert, anstatt zu tauschen
}
```
Ich verstehe, dass dieser Code falsch ist – ich verliere die Werte der Elemente, anstatt sie zu tauschen. Könnt ihr mir sagen, wie ich die Liste richtig mischen kann? Am liebsten einfach und effizient. Danke!
*P.S. Ich habe vom Fisher-Yates-Algorithmus gehört, bin mir aber nicht sicher.*
Noch keine Antworten.
Anmelden um eine Antwort zu hinterlassen
Blogs