Wie am effizientesten Zufallszahlen ohne Doubletten?

OP #1530006
Lesenswert?

Hallo,

für eine kleine Spielerei schreibe ich in zwei Arrays x und 
y-Koordinaten (Bereich 0..11) die durch rand()%12 erzeugt werden.

Die max. Anzahl der Einträge im Array ist fest definiert.

Ich möchte nun verhindern, dass zwei Einträge mit den gleichen 
Koordinaten existieren. Natürlich kann ich beim ermitteln von neuen 
Koordinaten immer das ganze Feld durchsuchen, ob es diese schon gibt und 
ggf. neue Zufallszahlen generieren.

Das ist allerdings nicht gerade effizient (Suchschleife...).

Gibt es da einen intelligenteren Ansatz?

Ciao...
Markus
#1530226
Lesenswert?

A. K. schrieb:
> Was dem Zufall schonmal etwas die Zähne zieht und die entstehende
> Sequenz als begrenzt zufällig erkennbar macht.

Nicht wenn man für die Aufgabenstellung eine Menge von Punkten benötigt, 
von denen keine zwei identisch sind. Was ja durchaus eine sinnvolle 
Forderung sein kann. Zufällig ist dann einfach die Verteilung der Punkte 
in der Ebene.
Gast #1534767
Lesenswert?

> Was dem Zufall schonmal etwas die Zähne zieht und die entstehende
> Sequenz als begrenzt zufällig erkennbar macht.

Berühmtes Beispiel aus der Schule:
Ziehung von Zahlen aus dem Hut mit und ohne Zurücklegen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren