inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

정말 쉽게 풀어보는 코딩 테스트 top 기본 문제 (with 자바)

원점에 가장 가까운 지점_문제해설

Queue 선언

225

열심히들어요

작성한 질문수 7

1

Queue<int[]> queue = new PriorityQueue<>(points.length,comp);

1 제너릭 int[] 부분이 어떻게 생겼는지 상상이 잘 가지 않습니다.

2. 객체 생성시 (points.length,comp) 부분에서 points.length 는 왜 지정하는것인가요?

java 코테 준비 같이 해요!

답변 1

0

푸샵맨 코딩스터디

안녕하세요.

PriorityQueue는 너무 자주 나와서 제가 강의를 하나 따로 만들었습니다.(코딩테스트 전 알아야할 개념문제입니다)

이 순서로 compareTo(), comparator(), PriorityQueue() 순서데로 공부하셔야 합니다.

1 제너릭 int[] 부분이 어떻게 생겼는지 상상이 잘 가지 않습니다.

=> int배열로 담은 것들을 비교하겠다는 말입니다.

무슨말이냐면  좌표값 {1,3},{-2,2}을 예제에서 줬잖아요.

여기서 1,3을 받아서 1*1+3*3 =10 , 두번째 값 -2,2를 받아서 -2*-2+2*2=8 이렇게 얻을려고 합니다.

그래서 int[]형태로 {1,3}을 담을 그릇을 준비하는겁니다.

잘 이해가 안가시면

맵을 예를들면  Map<key, value> 에서 (1,2), (2,10) 이렇게 맵이있는데 value 2, 10을 비교하고 싶다

그러면 아래처럼 Map을 담을 밥그릇을 준비하면됩니다.

Queue<Map.Entry<Integer, Integer>> queue = new PriorityQueue<>(comp);

또는

Queue<Map.Entry<Integer, Integer>> queue = new PriorityQueue<>( (a,b) -> a.getValue()==b.getValue() ? b.getKey().compareTo(a.getKey()) : a.getValue()-b.getValue());

2. 객체 생성시 (points.length,comp) 부분에서 points.length 는 왜 지정하는것인가요?

=> 생략해도 됩니다. 

     함수 형식에 맞춰준건데 옛날에는 필요했는데 지금은 안넣어도 됩니다.

더 궁금하시면 답글 남겨주세요.

표로 이해하실때ㄱ까지 알려드리겠습니다.

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

0

252

0

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

0

207

0

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

0

221

0

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

1

373

1

질문드립니다

1

218

1

Unique Paths Integer 질문입니다

0

218

1

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

1

250

1

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

0

306

2

질문드립니다~

0

195

1

left if문에 대해서

1

254

1

오타 인가요?

1

236

1

안녕하세요 강사님

1

187

1

질문 드립니다

0

171

2

Queue&Stack 문제해설집 문의

0

182

1

문제분석 로직 질문

1

228

1

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

1

230

1

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

1

200

1

for-each 문 질문있습니다!

0

292

1

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

2

279

2

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

1

277

3

강사님 오류맞나요?

1

205

1

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

1

171

1

질문입니다.

1

200

1

문제에 대한 이해

1

312

1