You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
자바 BFS 구현 시 코드가 다음으로 되어있습니다.
Queue q = new Queue<>();
자바에서 일반적인 자료구조 Queue의 구현은 다음과 같습니다.
Queue q = new LinkedList<>();
교재는 파이썬 기반이므로 deque를 사용하고 있고, deque 기반으로 코드가 진행되고 있습니다.
하지만 자바에도 ArrayDeque가 있습니다. 이는 파이썬 deque와 비슷합니다.
ArrayDeque q = new ArrayDeque<>();
Queue 인터페이스를 구현했기 때문에 Queue가 제공하는 add, offer, remove, poll은 기본적으로 사용이 가능합니다.
추가적으로 python의 deque.popleft()와 동일하게 자바에서는 다음과 같이 제공합니다.
q.pollFirst();
ArrayDeque의 소스코드를 확인해보시면 다음과 같이 양방향 큐를 이용하기 위해 다음과 같은 메소드가 있습니다.
addFirst(), addLast(), offerFirst(), offerLast()
removeFirst(), removeLast(), pollFirst(), pollLast()
자바 BFS 구현 시 코드가 다음으로 되어있습니다.
Queue q = new Queue<>();
자바에서 일반적인 자료구조 Queue의 구현은 다음과 같습니다.
Queue q = new LinkedList<>();
교재는 파이썬 기반이므로 deque를 사용하고 있고, deque 기반으로 코드가 진행되고 있습니다.
하지만 자바에도 ArrayDeque가 있습니다. 이는 파이썬 deque와 비슷합니다.
ArrayDeque q = new ArrayDeque<>();
Queue 인터페이스를 구현했기 때문에 Queue가 제공하는 add, offer, remove, poll은 기본적으로 사용이 가능합니다.
추가적으로 python의 deque.popleft()와 동일하게 자바에서는 다음과 같이 제공합니다.
q.pollFirst();
ArrayDeque의 소스코드를 확인해보시면 다음과 같이 양방향 큐를 이용하기 위해 다음과 같은 메소드가 있습니다.
addFirst(), addLast(), offerFirst(), offerLast()
removeFirst(), removeLast(), pollFirst(), pollLast()
공부하시는데 참고가 되었으면 하고 코드를 이와 같이 업데이트를 해도 좋을 것 같습니다.
The text was updated successfully, but these errors were encountered: