|
2 | 2 | import java.util.Map;
|
3 | 3 | import java.util.PriorityQueue;
|
4 | 4 |
|
5 |
| -// [ํ์ด] |
6 |
| -// 1. <์ซ์: ๋น๋์>๋ฅผ ์ ์ฅํ๋ HashMap๊ณผ [๋น๋์, ์ซ์]๋ฅผ ์ ์ฅํ๋ PriorityQueue๋ฅผ ์ ์ธํ๋ค. |
7 |
| -// 2. HashMap์ ์ซ์๋ณ๋ก ๋น๋์๋ฅผ ํจ๊ป ์ ์ฅํด์ ํด์ํ
์ด๋ธ์ ๋ง๋ ๋ค. |
8 |
| -// [์ฐ์ ์์ ํ์ ์ฌ์ฉ๋ ์๋ฃ๊ตฌ์กฐ] |
9 |
| -// 1. ๋ณ๋ ํด๋์ค๋ฅผ ์ ์ธ |
10 |
| -// 2. ์๊ตฌ์ฌํญ ์๋ฃํ ๋ฐฐ์ด์ ์ ์ธํ๋ค. |
11 |
| -// ์ฒ์์๋ ๋ณ๋ ํด๋์ค๋ฅผ ์ ์ธํ๋ค๊ฐ ๊ฐ์ด 2๊ฐ์ด๋ฉฐ ์๊ณ ๋ฆฌ์ฆ ๋ก์ง ์์ฒด๊ฐ ์ด๋ ค์์ int[] ๊ตฌ์กฐ๋ก ํ์ดํ๋ค. |
12 |
| -// (์ฃผ๋ก ์๊ณ ๋ฆฌ์ฆ์ด ์ด๋ ค์ฐ๋ฉด ๊ฐ๋
์ฑ์ด ๋์๋๋ผ๋ ์๋ฃ๊ตฌ์กฐ๋ฅผ ๋จ์ํํ๋ ์ต๊ด์ด ์๋ค) |
13 |
| -// [์ด๋ ค์ ๋ ์ ] |
14 |
| -// 1. ์ฐ์ ์์ ํ๋ ๋งค๋ฒ ์์๊ฐ ์ถ๊ฐ๋ ๋๋ง๋ค ๋ด๋ถ ์ ๋ ฌ์ ์ํํ๊ธฐ ๋๋ฌธ์ ์ฐ์ฐ์ ์ํํ๋ฉด์ k๊ฐ๋ฅผ ์ ์งํด์ผ ํ๋ค. |
15 |
| -// ๋ํ ๊ธฐ์กด [๋น๋์, ์ซ์]๋ฅผ ๋ฒ๋ ค์ผ๋ง ์ฌ๋ฐ๋ฅธ ๋ต์ ๋์ถํ ์ ์์๋ค. |
16 |
| -// 2. [์ซ์, ๋น๋์]๋ก ์ ์ฅํ๋ ๊ฒ๋ง ์๊ฐํ๋๋ ๋ด๋ถ ์ ๋ ฌ์ ์ด๋ป๊ฒ ํ์ง ๋ชปํด์ ๊ต์ฅํ ๊ณ ๋ฏผํ๋ค. ์ ๋ต์ ๋ฐ๋์๋ค. |
17 |
| - |
18 | 5 | class Solution {
|
19 | 6 | public int[] topKFrequent(int[] nums, int k) {
|
| 7 | + // [ํ์ด] |
| 8 | + // 1. <์ซ์: ๋น๋์>๋ฅผ ์ ์ฅํ๋ HashMap๊ณผ [๋น๋์, ์ซ์]๋ฅผ ์ ์ฅํ๋ PriorityQueue๋ฅผ ์ ์ธํ๋ค. |
| 9 | + // 2. HashMap์ ์ซ์๋ณ๋ก ๋น๋์๋ฅผ ํจ๊ป ์ ์ฅํด์ ํด์ํ
์ด๋ธ์ ๋ง๋ ๋ค. |
| 10 | + // [์ฐ์ ์์ ํ์ ์ฌ์ฉ๋ ์๋ฃ๊ตฌ์กฐ] |
| 11 | + // 1. ๋ณ๋ ํด๋์ค๋ฅผ ์ ์ธ |
| 12 | + // 2. ์๊ตฌ์ฌํญ ์๋ฃํ ๋ฐฐ์ด์ ์ ์ธํ๋ค. |
| 13 | + // ์ฒ์์๋ ๋ณ๋ ํด๋์ค๋ฅผ ์ ์ธํ๋ค๊ฐ ๊ฐ์ด 2๊ฐ์ด๋ฉฐ ์๊ณ ๋ฆฌ์ฆ ๋ก์ง ์์ฒด๊ฐ ์ด๋ ค์์ int[] ๊ตฌ์กฐ๋ก ํ์ดํ๋ค. |
| 14 | + // (์ฃผ๋ก ์๊ณ ๋ฆฌ์ฆ์ด ์ด๋ ค์ฐ๋ฉด ๊ฐ๋
์ฑ์ด ๋์๋๋ผ๋ ์๋ฃ๊ตฌ์กฐ๋ฅผ ๋จ์ํํ๋ ์ต๊ด์ด ์๋ค) |
| 15 | + // [์ด๋ ค์ ๋ ์ ] |
| 16 | + // 1. ์ฐ์ ์์ ํ๋ ๋งค๋ฒ ์์๊ฐ ์ถ๊ฐ๋ ๋๋ง๋ค ๋ด๋ถ ์ ๋ ฌ์ ์ํํ๊ธฐ ๋๋ฌธ์ ์ฐ์ฐ์ ์ํํ๋ฉด์ k๊ฐ๋ฅผ ์ ์งํด์ผ ํ๋ค. |
| 17 | + // ๋ํ ๊ธฐ์กด [๋น๋์, ์ซ์]๋ฅผ ๋ฒ๋ ค์ผ๋ง ์ฌ๋ฐ๋ฅธ ๋ต์ ๋์ถํ ์ ์์๋ค. |
| 18 | + // 2. [์ซ์, ๋น๋์]๋ก ์ ์ฅํ๋ ๊ฒ๋ง ์๊ฐํ๋๋ ๋ด๋ถ ์ ๋ ฌ์ ์ด๋ป๊ฒ ํ์ง ๋ชปํด์ ๊ต์ฅํ ๊ณ ๋ฏผํ๋ค. ์ ๋ต์ ๋ฐ๋์๋ค. |
| 19 | + |
20 | 20 | int[] answer = new int[k];
|
21 | 21 |
|
22 | 22 | Map<Integer, Integer> map = new HashMap<>();
|
|
0 commit comments