Hopsel: Gewichtete zufällige Auswahl

Beitrag lesen

Hi phanty!

und programmiertechnisch würd ich dann in einer schleifen durch das array gehen und schauen ob die zufallszahl zum element passt, oder?

Im Prinzip ja.

bei einem array mit grösse 4 ist das kein problem, aber wie mach ich das mit einem array von 100k. jedes mal eine 100k schleifen durchrasseln lassen ist nicht gerade schön. ^^

Optimierung ist aber nicht für lau zu bekommen, sondern erfordert erhöhten Verwaltungsaufwand.

Mein Vorschlag:
Baue das Array sortiert nach den Wahrscheinlichkeiten auf, wobei du zu jedem Element die Wahrscheinlichkeitssumme bis zu diesem Element mit abspeicherst (deshalb hatte ich die mittlere Zeile angegeben).
Mit der binären Suche findest du dein gewünschtes Element in höchstens 17 Schritten.

MfG H☼psel

--
"It's amazing I won. I was running against peace, prosperity, and incumbency."
George W. Bush speaking to Swedish Prime Minister unaware a live television camera was still rolling, June 14, 2001
Selfcode: ie:% fl:( br:> va:) ls:& fo:) rl:? n4:& ss:| de:] js:| ch:? sh:( mo:) zu:)