inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비

8. 응급실

queue를 배우다가 궁금한게 생겨서 질문드립니다.

445

영환

작성한 질문수 3

0

응급실 문제를 풀고 강의를 듣고 왔는데요

큐에서는 왜 get 매서드를 지원하지 않나요?

FIFO에 어긋나나요?

stack의 경우 vector를 확장해서 쓰기때문에 lifo에 어긋난다라는 글을 본적이 있어서 검색해보니 lifo는 삽입과 삭제의 경우에 해당하는거 같아서요 조회에는 해당하지 않는거 같은데 해당하나요?

 

아 물론 그냥 얘네가 그렇게 제공을 했다!! 하는거면 그런거겠지만요. 뭔가 그 개념적인? 이유가 있는지 궁금합니다

 

왜 궁금하냐면!! 어떻게보면 api?에서 제공하지 않는 get을 class를 만들어 편법?적으로 접근하신거같아서 입니다!! 조금 무례한 질문 죄송합니다

java 코테 준비 같이 해요!

답변 1

0

김태원

안녕하세요^^

큐의 맨 앞자료를 확인하는 함수 peek() 함수가 있습니다.

그리고 정확히 질문이 무엇인지 잘 이해가 되지 않습니다. 전 그냥 제공된 함수를 쓴 것 뿐입니다.

0

영환

아.. 저는 중간값을 확인하는 함수(list의 get(index)같은)가 없어서 queue의 중간값을 확인하는게 뭔가 큐의 본질에 위배되는 것인가 했습니다. 왜 linkedlist에는 겟을 만들어두지 않았을까요? 그리고 클래스로 어쩌면 겟을 사용하도록? 따로 구현한것인데 이것은 큐라는 자료구조의 본질에 어긋나는것은 아닌가요? 왜냐하면 jdk가 만들어진지 오래되었고 큐가 추가된지도 오래되었는데 get을 추가안하는데에는 이유가 있지 않을까요? 하는게 질문이었습니다 선생님 별 이득은 없는 질문입니다만 궁금했습니다.

0

방망이 깎던 노인

ArrayList와 LinkedList 의 차이를 공부해 보시면 해당 질문에 대한 답을 얻을 수 있습니다. ArrayList 는 인덱스를 기반으로 데이터에 접근하기 때문에 중간 값에 바로 접근할 수 있습니다. 하지만 LinkedList 는 서로 노드로 연결되어 있어서 가장 처음의 노드로 부터 해당하는 값까지 차례대로 접근해야만 합니다.
이외에도 성능상 차이점들이 있으니 검색해서 공부해보세요.

안녕하세요. 바뀐 채점사이트 관련해서 문의드립니다.

1

83

3

갑자기 채점 사이트가 바뀌었어요

0

57

1

문제 리스트 페이지

0

44

1

채점 사이트 관련 질문드립니다

0

42

1

봉우리 문제 질문입니다

0

103

2

씨름 선수 문제에서 각 선수의 몸무게나 키가 같을 수도 있다면?

0

75

0

이 코드랑 영상 코드중에 뭐가 더 좋은 코드인가요?

0

83

0

가중치 방향 그래프에서 가중치가 0인 간선을 표현하는 방법

0

77

1

좌표 정렬 문제 이 코드가 왜 틀린지 모르겠습니다 ㅠㅠ

0

96

2

6-7 강의에서

0

56

1

6-6. 장난꾸러기 질문 있습니다.

0

55

1

강의 수강후 코딩테스트

0

127

1

answer 변수 사용 여부

0

51

1

2중 for문

1

98

2

2-11. 임시반장정하기 (Runtime Error)

0

69

1

혹시 LinkedList 같은 자료 구조들은 따로 배우지 않나요?

0

76

1

이런 풀이는 어떨까요

0

52

1

자바 스트림 방식의 효율성 질문 드립니다.

0

63

1

알고리즘 자료 구조들..

0

69

1

StringBuilder vs BufferdWriter

0

53

1

원더랜드(프림)

0

58

1

이런 코드는 어떤가요?

0

68

1

bfs 풀이

0

65

1

병합정렬

0

58

1