大家讲道理2017-04-18 10:09:02
으아아아
shuffle
은 목록의 순서를 뒤섞고 Random
을 사용하여 인덱스(임의의 숫자)를 생성하고 i-1
의 요소를 임의의 인덱스로 바꿉니다. collection.size()
번 반복하세요.
PHP中文网2017-04-18 10:09:02
이런 종류의 문제는 소스코드를 보시면 됩니다.
으아아아위는 JDK의 소스 코드이고, 핵심 메소드는 shuffle
이며, 일부 설명은 삭제되었습니다.
먼저 세트의 요소 수를 가져옵니다. 5보다 작거나 RandomAccess
인터페이스를 구현하면 다시 반복되며 세트에서 인접한 두 요소의 위치가 무작위로 교환됩니다. 구현된 경우 이 인터페이스가 있다는 것은 배열과 유사하게 빠른 임의 액세스 작업을 지원한다는 의미입니다. RandomAccess
인터페이스가 구현되지 않은 경우 배열로 변환된 다음 세트에서 인접한 두 요소의 위치를 무작위로 교환하면서 반복됩니다. , 그리고 마지막으로 배열을 다시 원래 RandomAccess
Medium으로 되돌립니다. list
大家讲道理2017-04-18 10:09:02
컬렉션을 "대략적으로" 무작위로 섞는 것입니다. 원리는 매우 간단합니다. 이는 난수 생성기를 기반으로 하며 컬렉션 요소의 순서와 무작위로 상호 작용합니다.