>  Q&A  >  본문

java - Collections.shuffle

ringa_leeringa_lee2728일 전610

모든 응답(3)나는 대답할 것이다

  • 大家讲道理

    大家讲道理2017-04-18 10:09:02

    으아아아

    shuffle은 목록의 순서를 뒤섞고 Random을 사용하여 인덱스(임의의 숫자)를 생성하고 i-1의 요소를 임의의 인덱스로 바꿉니다. collection.size()번 반복하세요.

    회신하다
    0
  • PHP中文网

    PHP中文网2017-04-18 10:09:02

    이런 종류의 문제는 소스코드를 보시면 됩니다.

    으아아아

    위는 JDK의 소스 코드이고, 핵심 메소드는 shuffle이며, 일부 설명은 삭제되었습니다.

    먼저 세트의 요소 수를 가져옵니다. 5보다 작거나 RandomAccess 인터페이스를 구현하면 다시 반복되며 세트에서 인접한 두 요소의 위치가 무작위로 교환됩니다. 구현된 경우 이 인터페이스가 있다는 것은 배열과 유사하게 빠른 임의 액세스 작업을 지원한다는 의미입니다. RandomAccess

    5개 이상의 요소가 있고

    인터페이스가 구현되지 않은 경우 배열로 변환된 다음 세트에서 인접한 두 요소의 위치를 ​​무작위로 교환하면서 반복됩니다. , 그리고 마지막으로 배열을 다시 원래 RandomAccessMedium으로 되돌립니다. list

    회신하다
    0
  • 大家讲道理

    大家讲道理2017-04-18 10:09:02

    컬렉션을 "대략적으로" 무작위로 섞는 것입니다. 원리는 매우 간단합니다. 이는 난수 생성기를 기반으로 하며 컬렉션 요소의 순서와 무작위로 상호 작용합니다.

    회신하다
    0
  • 취소회신하다