inflearn logo
강의

Khóa học

Chia sẻ kiến thức

Các vấn đề kiểm tra mã hóa cơ bản hàng đầu được giải quyết thực sự dễ dàng (với Java)

Điểm gần nhất với mã_nguồn gốc

질문드립니다~

194

yeeun3161428

3 câu hỏi đã được viết

0

안녕하세요, 강의 잘 듣고 있습니다.

강의를 듣다가 궁금한 점이 생겨서 질문 드려요.

offer()과 add(), poll()과 remove() 각각 비슷한 기능을 한다고 생각하는데요,

두 개의 함수 중에 offer와 poll을 사용하신 이유가 궁금합니다!

코테 준비 같이 해요! java

Câu trả lời 1

0

pushupman

안녕하세요 엘사님~

겨울왕국에서 오셨군요 ^^;

질문주신 내용 : offer()과 add(), poll()과 remove() 각각 비슷한 기능을 한다고 생각하는데요,

두 개의 함수 중에 offer와 poll을 사용하신 이유가 궁금합니다!

답변

==>

1. 메소드의 기능은 동일합니다

아래그림에서 보면 기능이 동일합니다.

offer()대신 add(), poll() 대신 remove()를 써도 문제의 답은 동일하게 나옵니다.

다만 실패했을때 리턴타입이 다르죠.

실패했을때 exception처리를 해야하므로 기피하게 되는거 같습니다.

(바꿔 말하면 exception처리를 안해도 되는 메소드를 만든거 같습니다)

그래서 일반적으로 queue가 나오면 offer로 넣고, poll로 빼네죠

자바 코테에서 stack 은 push, pop, peek 와 queue는 offer , poll,peek

이정도만 외우고 있으면 될거 같습니다.(넣고, 빼고, 잠시보기)

최근 코테에도 알게 모르게 스택문제를 응용해서 많이 내고 있습니다.

(눈치 못채게 꼬와서 냅니다 ㅜㅜ)

2).  collection 인터페이스 구조

아래 collection 인터페이스의 대표인 List에 add(), remove()가 어디에나 있는습니다.

제 생각엔 queue에도  add(), remove()가 덤으로 주어진거죠 근데 얘네들은 오류발생시 exception 처리 부분이 있으니까, 별도의 offer(), poll()을 만들어주고 얘네들은 exception처리 안해도 된다하면서

queue에서는 개발자들이 offer, poll을 많이 사용하게 된거 같습니다.

강의자료에 나오는 m과 n의 범위가 코딩하고 다른거 같습니다

0

252

0

나선형매트릭스 깃허브에 코드가 없는것같아요

0

206

0

로그 파일의 데이터 재정렬 코드가 깃허브에 없어요!

0

220

0

새로 생긴 기초강의 질문드려요

1

372

1

질문드립니다

1

218

1

Unique Paths Integer 질문입니다

0

217

1

subString 방법으로 문제 풀이 영상은 짤린건가요?

1

250

1

DFS 방식으로 푼 것이 맞나요?

0

305

2

left if문에 대해서

1

253

1

오타 인가요?

1

235

1

안녕하세요 강사님

1

186

1

질문 드립니다

0

170

2

Queue&Stack 문제해설집 문의

0

182

1

문제분석 로직 질문

1

227

1

시간 복잡도 문의드립니다.

1

229

1

시간복잡도 질문드립니다.

1

199

1

for-each 문 질문있습니다!

0

292

1

강의영상에서 사용된 로그 메소드가 궁금합니다.

2

279

2

강의자료 + 문제 이해 관련 질문입니다

1

276

3

강사님 오류맞나요?

1

204

1

강사님 시간 복잡도에 대해서 질문드립니다.

1

170

1

질문입니다.

1

200

1

문제에 대한 이해

1

312

1

visited 체크 시점 질문있습니다!

1

504

1