개발/java

java_배열과 반복문_가로,세로 중복 없이 random 수 행렬

개발하는준이 2022. 3. 3. 00:18

선언부

 

Way?

3행값 4 , 2, 1

들어갈 수 있는 숫자 3

4열값 2, 3

들어 갈수 있는 숫자 1,4

i행의 들어갈 값이 j열과 비교했을 때,

없어야 조건식 성립

하지만,

다른난수를 돌려봐도 3아닌 다른숫자는 들어갈 수 없기 때문에

무한루프발생.

How?

무한루프 발생하게 됐을때,

일정 범위안에서 반복 --> randomCount 변수 값의 횟수정의

어느정도 값이 있어야 n값이 커졌을때에도 루프를 잡아서 메인메서드 호출이가능

 

따라서 if(andomCount>10000) 조건문삽입.

무한루프잡느라 처음에는 로직이 생각이 잘안나서 여러 시도를 해봤는데

중복신뢰성이 많이 떨어졌다. 아마 값을 비교 후 난수 발생한 뒤

그 난수가 다시 중복됐던 배열값과 비교를 해야했었는데 그 부분을 놓쳤다.

0으로 초기화하기보단 더욱 최적화된 인덱스를 찾고 싶었지만

그럴수록 중복신뢰성은 없어져갔다.

횟수의 최적화부분이 완벽하지 않은거 같아 아쉽다

결과------------------------------------------------------------------------------------------------------

'개발 > java' 카테고리의 다른 글

java_반복문for문_별찍기_별모양Star  (0) 2022.03.03
java_반복문for문_별찍기_원  (0) 2022.03.03
java_for문_별찍기_마름모  (0) 2022.03.03