Esiste un modo semplice per generare tutte le possibili permutazioni di un vettore di numeri interi (da 1 a massimo 999) che esclude specificamente gli elementi duplicati?R: genera tutte le permutazioni del vettore senza elementi duplicati
Ad esempio, per un vettore con tre elementi in una gamma da 1 a 9, la sequenza 1 2 3
sarebbe accettabile, come sarebbe 1 2 9
ma 1 2 2
sarebbe valida. La sequenza deve contenere esattamente gli elementi n
(in questo caso, tre). EDIT: per evitare confusione, l'ordine è significativo, quindi 1 2 9
e 9 2 1
sono entrambi validi e obbligatori.
Ci sono molte domande su permutazioni e combinazioni che usano R su SO (come this e this) ma nessuna sembra adattarsi a questo caso particolare. Spero che là fuori ci sia una oscura funzione R o pacchetto che si prenderà cura di me senza che io debba scrivere una funzione sgraziata da solo.
Sì, l'ordine è importante così come gli elementi stessi. – SlowLearner
Bene, la risposta senza il chiarimento modificato era sicuramente 'sample' e sono sicuro che si tratta di un duplicato, ma il duplicato citato non è una buona risposta. –
Come avvertimento per coloro che seguono: il numero di permutazioni di elementi 'n' è' n! ', Che diventa molto veloce. Per i 999 elementi menzionati in questa domanda ci sono circa 4 * 10^2564 permutazioni. – Gregor