[java] 큐 + 반복문에서 일어날 수 있는 실수

Seongho·2023년 4월 10일
0

java

목록 보기
4/10

.

코딩테스트 문제를 풀다가 내가 원하는대로 코드가 동작하지 않아 디버깅을 통해 실수를 찾았는데, 다음에도 이러한 실수를 하지 않기 위해 정리해본다.

의도


반복문을 한번 돌 때, 큐에 데이터가 두개씩 들어간다. 따라서 처음에는 A, B가 들어가고, 다음 반복에서 A를 꺼내고 C, D가 들어가고, 다음 반복에서 B를 꺼내고 E, F가 들어가는 동작을 구현하려 했다.

실수


위 코드는 맞는 코드이다.
위와 같이 큐에 배열 두개를 넣어야 하는데, 체크표시한 부분에서 배열을 하나만 선언하고 넣었던 것이 문제였다. 그래서 처음 if문을 거칠 때, 값이 배열 객체에 들어가고, 그 다음 if문에서 같은 배열 객체가 덮어씌워지는 일이 일어났다.
반복문을 한번 돌 때, 객체를 두개씩 저장해야 되는 상황인데, 객체를 하나만 생성한 것이 문제였다.
따라서, 반복문 한번에 객체를 두개 생성하도록 코드를 수정하였다.

profile
Record What I Learned

0개의 댓글