From 3cb8a4747161def1bf7f888ae838a8e77f0bf082 Mon Sep 17 00:00:00 2001 From: s0___0k <61587396+s0ooo0k@users.noreply.github.com> Date: Mon, 28 Jul 2025 15:37:16 +0900 Subject: [PATCH 1/6] Add valid anagram solution - s0ooo0k --- valid-anagram/s0ooo0k.java | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 valid-anagram/s0ooo0k.java diff --git a/valid-anagram/s0ooo0k.java b/valid-anagram/s0ooo0k.java new file mode 100644 index 000000000..8e29b6d59 --- /dev/null +++ b/valid-anagram/s0ooo0k.java @@ -0,0 +1,22 @@ +class Solution { + /* + * 초반 풀이시 단순 s의 문자가 t에 포함하는지만 확인하여 제대로된 비교를 못함 (ex "sass" vs "saas") + * 따라서 정렬 후 비교하는 방식으로 전환 + * + * 시간복잡도 O(n log n) + * 공간복잡도 O(n) + */ + public boolean isAnagram(String s, String t) { + + if(s.length() != t.length()) + return false; + + char[] chr1 = s.toCharArray(); + char[] chr2 = t.toCharArray(); + + Arrays.sort(chr1); + Arrays.sort(chr2); + + return Arrays.equals(chr1, chr2); + } +} \ No newline at end of file From dda1a7de5359a39372efd77aa40ab9d19d2a62d8 Mon Sep 17 00:00:00 2001 From: s0___0k <61587396+s0ooo0k@users.noreply.github.com> Date: Wed, 30 Jul 2025 23:28:28 +0900 Subject: [PATCH 2/6] Add climbin-stairs solution - s0ooo0k --- climbing-stairs/s0ooo0k.java | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 climbing-stairs/s0ooo0k.java diff --git a/climbing-stairs/s0ooo0k.java b/climbing-stairs/s0ooo0k.java new file mode 100644 index 000000000..e48460d48 --- /dev/null +++ b/climbing-stairs/s0ooo0k.java @@ -0,0 +1,16 @@ +class Solution { + /* + * 시간복잡도 O(n) + * 공간복잡도 O(n) + */ + public int climbStairs(int n) { + int[] piv = new int[n+1]; + piv[0]=1; + piv[1]=2; + + for(int i=2; i Date: Fri, 1 Aug 2025 22:30:03 +0900 Subject: [PATCH 3/6] Add validate binary search Solution - s0ooo0k --- validate-binary-search-tree/s0ooo0k.java | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 validate-binary-search-tree/s0ooo0k.java diff --git a/validate-binary-search-tree/s0ooo0k.java b/validate-binary-search-tree/s0ooo0k.java new file mode 100644 index 000000000..9dbc86597 --- /dev/null +++ b/validate-binary-search-tree/s0ooo0k.java @@ -0,0 +1,14 @@ +/* + * 시간복잡도 : O(n) + */ + +class Solution { + public boolean isValidBST(TreeNode root) { + return valid(root, Long.MIN_VALUE, Long.MAX_VALUE); + } + private boolean valid(TreeNode node, long min, long max) { + if(node==null) return true; + if(node.val <= min || node.val >=max) return false; + return valid(node.left, min, node.val) && valid(node.right, node.val, max); + } +} \ No newline at end of file From ff34068ece954dbcae0247184175e7cb0c38482d Mon Sep 17 00:00:00 2001 From: s0___0k <61587396+s0ooo0k@users.noreply.github.com> Date: Fri, 1 Aug 2025 22:40:04 +0900 Subject: [PATCH 4/6] Add valid binary search Solution - s0ooo0k --- validate-binary-search-tree/s0ooo0k.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/validate-binary-search-tree/s0ooo0k.java b/validate-binary-search-tree/s0ooo0k.java index 9dbc86597..a8e48786a 100644 --- a/validate-binary-search-tree/s0ooo0k.java +++ b/validate-binary-search-tree/s0ooo0k.java @@ -11,4 +11,5 @@ private boolean valid(TreeNode node, long min, long max) { if(node.val <= min || node.val >=max) return false; return valid(node.left, min, node.val) && valid(node.right, node.val, max); } -} \ No newline at end of file +} + From 132bd90dc8ed6c1404a9940b599ba53d9a6fe0e6 Mon Sep 17 00:00:00 2001 From: s0___0k <61587396+s0ooo0k@users.noreply.github.com> Date: Fri, 1 Aug 2025 22:40:46 +0900 Subject: [PATCH 5/6] Add valid anagaram Solution - s0ooo0k --- valid-anagram/s0ooo0k.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/valid-anagram/s0ooo0k.java b/valid-anagram/s0ooo0k.java index 8e29b6d59..56989afdc 100644 --- a/valid-anagram/s0ooo0k.java +++ b/valid-anagram/s0ooo0k.java @@ -19,4 +19,5 @@ public boolean isAnagram(String s, String t) { return Arrays.equals(chr1, chr2); } -} \ No newline at end of file +} + From bbabf691939fa910930f11b9f268910b373627e3 Mon Sep 17 00:00:00 2001 From: s0___0k <61587396+s0ooo0k@users.noreply.github.com> Date: Fri, 1 Aug 2025 22:41:25 +0900 Subject: [PATCH 6/6] Add climbing stairs Solution - s0ooo0k --- climbing-stairs/s0ooo0k.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/climbing-stairs/s0ooo0k.java b/climbing-stairs/s0ooo0k.java index e48460d48..9ebe00120 100644 --- a/climbing-stairs/s0ooo0k.java +++ b/climbing-stairs/s0ooo0k.java @@ -13,4 +13,5 @@ public int climbStairs(int n) { } return piv[n-1]; } -} \ No newline at end of file +} +