File tree Expand file tree Collapse file tree 2 files changed +80
-0
lines changed Expand file tree Collapse file tree 2 files changed +80
-0
lines changed Original file line number Diff line number Diff line change
1
+
2
+ // NOTE: 백준 N과 M문제와 거의 동일한 문제
3
+ // memo(n) = memo(n-1)의 경우에 수에서 1칸을 올라가는 경우 + memo(n-2) 의 경우의 수에서 2 칸을 올라가는 경우의 점화식으로 표현됨.
4
+
5
+
6
+ // 시간 복잡도: O(n)
7
+ class Solution {
8
+ public int climbStairs (int n ) {
9
+ int [] memo = new int [n + 1 ];
10
+
11
+
12
+ if (n < 3 ) {
13
+ return n ;
14
+ }
15
+
16
+ memo [1 ] = 1 ;
17
+ memo [2 ] = 2 ;
18
+ for (int i = 3 ; i < memo .length ; i ++) {
19
+ memo [i ] = memo [i - 1 ] + memo [i - 2 ];
20
+ }
21
+
22
+ return memo [n ];
23
+ }
24
+ }
Original file line number Diff line number Diff line change
1
+ import java .util .HashMap ;
2
+ import java .util .Map ;
3
+
4
+
5
+ // NOTE: anagram 자체를 정확하게 이해하지 못해서 몇 번 틀렸던 문제.
6
+ // 두 문자열의 길이가 다르면 anagram이 아니다.
7
+ // 같은 알파뱃이 같은 개수가 있는지 확인을 하는게 문제의 핵심.
8
+
9
+ // NOTE: 시간복잡도: O(n+m)
10
+ class Solution {
11
+ public boolean isAnagram (String s , String t ) {
12
+ Map <Character , Integer > sMap = new HashMap <>();
13
+ Map <Character , Integer > tMap = new HashMap <>();
14
+
15
+ int tLen = t .toCharArray ().length ;
16
+ int sLen = s .toCharArray ().length ;
17
+
18
+ if (tLen != sLen ) {
19
+ return false ;
20
+ }
21
+
22
+ for (char c : s .toCharArray ()) {
23
+ if (sMap .containsKey (c )) {
24
+ int cnt = sMap .get (c );
25
+ sMap .put (c , cnt + 1 );
26
+ } else {
27
+ sMap .put (c , 1 );
28
+ }
29
+ }
30
+
31
+ for (char c : t .toCharArray ()) {
32
+ if (tMap .containsKey (c )) {
33
+ int cnt = tMap .get (c );
34
+ tMap .put (c , cnt + 1 );
35
+ } else {
36
+ tMap .put (c , 1 );
37
+ }
38
+ }
39
+
40
+
41
+ for (Character c : sMap .keySet ()) {
42
+ if (!tMap .containsKey (c )) {
43
+ return false ;
44
+ }
45
+
46
+ int sMapCnt = sMap .get (c );
47
+ int tMapCnt = tMap .get (c );
48
+
49
+ if (sMapCnt != tMapCnt ) {
50
+ return false ;
51
+ }
52
+ }
53
+
54
+ return true ;
55
+ }
56
+ }
You can’t perform that action at this time.
0 commit comments