반응형

 

 

문제 링크 : https://leetcode.com/problems/two-sum/description/

 

 

처음 submit 한 코드

 

public static int[] twoSum(int[] nums, int target) {
        int[] result = new int[2];
        boolean isBreak = false;
        for (int i = 0; i < nums.length; i++) {

            if (isBreak) break;

            for (int j = i+1; j < nums.length; j++) {
                if (nums[i] + nums[j] == target) {
                    result[0] = i;
                    result[1] = j;
                    isBreak = true;
                    break;
                }
            }
        }
        return result;
    }
}

 

불필요한 break가 많다. 전체적으로 보기 불편하다

 

개선된 코드

class Solution {
    public int[] twoSum(int[] nums, int target) {
        int[] result = new int[2];
        boolean isBreak = false;
        for (int i = 0; i < nums.length; i++) {
            for (int j = i+1; j < nums.length; j++) {
                if (nums[i] + nums[j] == target) {
                    return new int[]{i,j};
                }
            }
        }
        return result;
    }
}

 

바로 return 시켜버리면 된다

728x90

'BackEnd > 알고리즘' 카테고리의 다른 글

leetcode 21. Merge Two Sorted Lists  (0) 2024.07.31
leetcode 234. Palindrome Linked List  (0) 2024.07.27
[LeetCode] 1598. Crawler Log Folder  (0) 2024.07.10
최빈값구하기  (0) 2023.02.20
대소문자 변환  (0) 2023.02.20

+ Recent posts