인터넷 돌아댕기면 일반적으로 큐 선언하는 방식이
Queue<Integer> queue = new LinkedList<>();
이거인데 이거에 대해 궁금해서ㅇㅇ
LinkedList가 List, Queue 두 인터페이스의 구현체인데,
앞에 Queue<>로 선언하냐, List<>로 선언하냐에 따라 달라지는게 있음?
그리고 자바 최적화 책에서 Vector, Stack 구현체를 안좋게 평가하더라구
Vector는 이해해도 Stack 클래스에는 왜 쓸데없는 추가 로직만 많다고 하는지 모르곘어서ㅇㅇ
혹시 아는 사람 설명졈
1번 질문은 그냥 구현되어있는 메서드 차이 뿐인가?
1번은 링크드리스트를 que의 구현체로 취급해야 할지 list의 구현체로 취급해야 할지 상황에 따라 달라짐
예를 들어 리스트를 써야하는데 추가 삭제가 잦아서 링크드리스트를 써야할땐 List 로 선언하는거고 큐의 특성을 이용할려고 링크드리스트를 써야할땐 Queue 로 선언하는거고
스택은 아마 중간에 요소를 끼워넣을수 있는점 때문에 그러는거 같은데
ㅇㅎ링크드리스트 자료구조 목적 그대로 생각하면 되겠네 스택은 같은 용도의 다른 최선책이 있다는건가 책 좀 더 읽어봐야할듯 말한 의도를 모르겠네 ㄳㄳ