inflearn logo
강의

Khóa học

Chia sẻ kiến thức

Thử nghiệm mô phỏng kiểm tra mã hóa (với Java)

6. Con đường ngắn nhất để kiếm thức ăn (bfs)

Priority Queue 대신 LinkedList 사용 이유를 알 수 있을까요??

402

jundol

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

1

안녕하세요 강사님! 강의 잘 듣구있습니다.

혹시 제목 그대로 LinkedList 를 사용하신 이유를 알 수 있을까요?

또한,  Priority Queue 사용시에는 초기 pq.add(new int[] {x, y, 1}); 이렇게 하면 되는지 문의드립니다!

java 코테 준비 같이 해요!

Câu trả lời 2

1

pushupman

강준님 안녕하세요

1-1질문주신내용:

혹시 제목 그대로 LinkedList 를 사용하신 이유를 알 수 있을까요?

또한,  Priority Queue 사용시에는 초기 pq.add(new int[] {x, y, 1}); 이렇게 하면 되는지 문의드립니다!

1-2 답변 :

bfs문제는 queue에 넣어서 한칸씩 이동하는 개념이죠, 일반적으로 

Queue<int[]> q = new LinkedList<>(); 이걸 사용하죠

만약 Priority Queue를 쓰고 싶다면,  내부적으로 우선순위를 만들어줘야겠죠?

maxHeap, minHeap 중에 하나로 만들어서 특정한값으로 소팅이 되게해주죠

예를들어 a->b 지점가는데 cost 500, a->c지점 가는데 cost 200 

이런 경우 cost를 비교대상으로 잡고 maxHeap, minHeap을 잡죠

이 문제의 경우에는 한칸한칸 이동하는 개념이라 Priority Queue를 사용하지 않았습니다.

추후 Priority Queue 를 다익스트라 최단거리 문제를 다뤄 보도록 하겠습니다.

이해안되시면 추가 질문주세요~

감사합니다.

0

jundol

이해했습니다! 답변 감사합니다~!

movablePageCount와 pageSize 상수

0

14

1

JPA와 네이티브 쿼리

0

16

1

조회 메서드 네이밍 질문

0

38

1

소스파일

0

37

1

강의 판서 자료

0

40

2

모의고사 파일오류

0

61

3

Properties 설정이 추가되었는데

0

28

1

모의고사 다운

0

43

1

업캐스팅 원칙

0

57

2

11강 [실습] Docker로 MySQL1 분만에 실행하기

0

68

2

11강 [실습] Docker로 MySQL1 분만에 실행하기

0

52

2

6분46초

0

53

2

공략법

0

56

1

isInterrupted 질문 있다.

0

30

1

선생님 샤딩에 대한 강의도 좀 해주세요

0

43

1

몽고DB CAP 이론 관련

0

51

2

모의고사 파일과 이론파일 업데이트

1

69

3

이론 pdf 다운은 어디서 하나요?

0

63

2

유효한 솔루션이 없는 조건

1

220

1

다른 풀이방법질문

1

257

1

result 가 없습니다.

1

272

1

영상 오디오가 너무 이상해요 ㅠㅠ

1

313

1

입출력 예시가 잘못된거 아닌가요??

1

209

2

가장 바깥 괄호제거

1

579

3