비반복 난수 구성표 1: 1531밀리초
일반적인 아이디어는 먼저 1~3000의 배열을 만들고 한 번에 하나씩 꺼낸 다음 배열을 하나씩 줄이는 것입니다. , 하나를 취하고, 결코 반복되지 않도록 하나를 줄이십시오.
]
중복 없음 난수 방식 2: 297밀리초
하지만 방식 1은 슬라이스 방식을 사용하므로 이 방식은 배열을 재생성하므로 메모리와 CPU 작업이 많이 소모되므로 효율성이 매우 낮습니다. 이를 개선하고 원래 배열에서 숫자를 가져옵니다. 그런 다음 원래 배열의 이 위치에 null 값을 할당합니다. 이러한 방식으로 다음에 숫자를 검색할 때 해당 숫자가 null로 확인되면 null이 아닐 때까지 검색되지 않습니다. 테스트 후에는 효율성이 크게 향상될 수 있습니다.
외부 J를 도입해야 하는 경우 실행하려면 새로 고쳐야 합니다.
]
중복 없음 난수 방식 3: 234밀리초
또 다른 생각으로, 원래 배열 원점을 쪼개서 차례로 인쇄하면
이렇게 하면 무작위성은 결코 반복될 수 없습니다. , 더 효율적입니다.
[Ctrl A 모두 선택 참고: 외부 J를 도입해야 하는 경우 실행하려면 새로 고쳐야 합니다. ]