diff --git a/climbing-stairs/sonshn.java b/climbing-stairs/sonshn.java new file mode 100644 index 000000000..f4df8a8c4 --- /dev/null +++ b/climbing-stairs/sonshn.java @@ -0,0 +1,20 @@ +/** + * dp[i] = dp[i - 1] + dp[i - 2] + */ +class Solution { + public int climbStairs(int n) { + if (n <= 2) { + return n; + } + + int[] dp = new int[n + 1]; + dp[1] = 1; + dp[2] = 2; + + for (int i = 3; i <= n; i++) { + dp[i] = dp[i - 1] + dp[i - 2]; + } + + return dp[n]; + } +} diff --git a/valid-anagram/sonshn.java b/valid-anagram/sonshn.java new file mode 100644 index 000000000..5f9548cf6 --- /dev/null +++ b/valid-anagram/sonshn.java @@ -0,0 +1,19 @@ +import java.util.*; + +/** + * String to char array, sort, and compare + * + * 시간 복잡도: O(nlogn) + * 공간 복잡도: O(n) + */ +class Solution { + public boolean isAnagram(String s, String t) { + char[] sArray = s.toCharArray(); + char[] tArray = t.toCharArray(); + + Arrays.sort(sArray); + Arrays.sort(tArray); + + return Arrays.equals(sArray, tArray); + } +}