Generate random numbers without repeating a value: Difference between revisions

Added Java and Rust solutions
(Added Java and Rust solutions)
Line 145:
4 14 17 15 1 6 12 11 2 3 19 10 9 18 7 13 8 20 16 5
13 12 8 3 9 17 14 10 6 2 11 20 19 18 4 7 16 1 15 5
</pre>
 
=={{header|Java}}==
<lang java>import java.util.*;
 
public class RandomShuffle {
public static void main(String[] args) {
Random rand = new Random();
List<Integer> list = new ArrayList<>();
for (int j = 1; j <= 20; ++j)
list.add(j);
Collections.shuffle(list, rand);
System.out.println(list);
}
}</lang>
 
{{out}}
<pre>
[19, 15, 10, 6, 17, 13, 14, 9, 2, 20, 3, 18, 8, 16, 7, 12, 1, 4, 5, 11]
</pre>
 
Line 320 ⟶ 339:
2 7 1 9 12 5 11 14 20 4 10 8 13 6 16 18 3 15 19 17
done...
</pre>
 
=={{header|Rust}}==
<lang rust>// [dependencies]
// rand = "0.7.2"
 
fn main() {
use rand::seq::SliceRandom;
use rand::thread_rng;
let mut rng = thread_rng();
let mut v: Vec<u32> = (1..=20).collect();
v.shuffle(&mut rng);
println!("{:?}", v);
}</lang>
 
{{out}}
<pre>
[11, 19, 1, 7, 15, 4, 13, 10, 16, 3, 2, 18, 20, 17, 9, 8, 5, 6, 12, 14]
</pre>
 
1,777

edits