Wählen Sie eine Zufallszahl, immer mit steigendem Wert über die zuletzt gewählte Zufallszahl

7

Wie würde ich effizient eine 1-mal-1-aufsteigende Zufallsstichprobe der Werte 1: n nehmen und sicherstellen, dass jeder der zufällig ausgewählten Werte immer höher ist als der vorherige Wert?

z.B.:

  

Bekommen Sie für die Werte 1: 100 eine Zufallszahl, sagen Sie, welche 61 ist. (aktuelle Liste = 61)
  Wählen Sie dann eine andere Zahl zwischen 62 und 100, sagen Sie, welche 90 ist (aktuelle Liste = 61,90)
  Wählen Sie dann eine andere Zahl zwischen 91 und 100, sagen Sie, welche 100 ist.
  Stoppen Sie den Prozess, wenn der Maximalwert erreicht wurde (endgültige Liste = 61,90,100)

Ich bin im Loop-Land stecken geblieben und habe auf diese klobige Art gedacht:

%Vor%

Ich möchte einen letzten Vektor melden, der die Verkettung von a1, a2, a (n):

ist %Vor%

Obwohl das wie eine Hausaufgabenfrage klingt, ist es das nicht. Ich habe die Tage der Hausaufgaben glücklicherweise vor vielen Jahren verlassen.

    
thelatemail 26.09.2012, 04:17
quelle

5 Antworten

15

Komm zu spät zur Party, aber ich denke, das wird deine Welt rocken:

%Vor%     
flodel 26.09.2012, 10:51
quelle
6

Dies verwendet eine while -Schleife und ist in eine Funktion eingepackt

%Vor%

Bearbeiten

Notieren Sie sich die zu bearbeitende Änderung, wenn das neue Beispiel 100 ist, und die Art, wie sample eine Ganzzahl im Gegensatz zu einem Vektor für x

behandelt

Bearbeiten 2

Das Lesen der Hilfe für sample ergab die nützliche resample Funktion. Das vermeidet die Fallstricke wenn Länge (x) == 1

    
mnel 26.09.2012 04:34
quelle
3

Nicht besonders effizient, aber:

%Vor%

Proben EDIT: Trimmen ein wenig Fett von ihm:

%Vor%     
Tyler Rinker 26.09.2012 04:31
quelle
1

sogar später auf die Party, aber nur für Kicks:

%Vor% %Vor%     
Ricardo Saporta 25.02.2013 07:04
quelle
0

Zufällige Vektoren sortieren

Erstellen Sie einen Vektor zufälliger Ganzzahlen und sortieren Sie ihn danach.

%Vor%

Gibt 10 zufällige Ganzzahlen zwischen 1 und 1000.

%Vor%

Dies funktioniert natürlich auch mit zufälligen Dezimalzahlen und Gleitkommazahlen.

    
Stefan 14.07.2016 06:03
quelle

Tags und Links