본문 바로가기

Algorithm50

[LeetCode] Symmetric Tree (Kotlin) https://leetcode.com/problems/symmetric-tree fun isSymmetric(root: TreeNode?): Boolean { if (root == null) { return true } return isEqual(root.left, root.right) } fun isEqual(left: TreeNode?, right: TreeNode?): Boolean { if (left == null && right == null) { return true } if (left == null || right == null) { return false } if (left.`val` != right.`val`) { return false } return isEqual(left.left, .. 2023. 1. 14.
[LeetCode] Merge Sorted Array (Kotlin) https://leetcode.com/problems/merge-sorted-array Merge Sorted Array - LeetCode Merge Sorted Array - You are given two integer arrays nums1 and nums2, sorted in non-decreasing order, and two integers m and n, representing the number of elements in nums1 and nums2 respectively. Merge nums1 and nums2 into a single array sorted in non-de leetcode.com fun merge(nums1: IntArray, m: Int, nums2: IntArra.. 2023. 1. 14.
[Programers] 카드 짝 맞추기 (Kotlin) https://school.programmers.co.kr/learn/courses/30/lessons/72415 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 BFS + 순열을 이용한 문제였다. 중요한 점은 BFS 로직을 작성할 때 도착 시 한 칸 이동 Ctrl + 이동 세 부분을 나누어서 생각해야 하는 점이다. 2차원 배열을 Deep Copy 할 때 board.clone() 을 해서 오류가 발생했다. clone() 메서드를 2차원 배열에 사용하면 배열 내부의 요소는 Deep Copy 되지 않는다는 점을 조심하자. import java.util.L.. 2022. 12. 8.
[LeetCode] Two Sum (Kotlin) class Solution { fun twoSum(nums: IntArray, target: Int): IntArray { val map = mutableMapOf() for ((i, v) in nums.withIndex()) { if (map.containsKey(target - v)) { return intArrayOf(map[target - v]!!, i) } map[v] = i } return intArrayOf() } } 2022. 12. 2.