본문 바로가기

old/Algorithm Solving

LeetCode 1512. Number of Good Pairs 자바 문제 풀이

반응형

문제

Number of Good Pairs - LeetCode

문제 해결 방법

  • 반복문안에 또다른 반복문(for)과 다중조건(if, &&연산자)을 잘 잡을수 있는지 묻는 문제 입니다.

Github Link

https://github.com/eunhanlee/LeetCode_1512_NumberofGoodPairs_Solution.git

시간복잡도: O(n^2), 공간복잡도: O(k)

class Solution {
    /**
     * 주어진 배열에서 동일한 쌍의 개수를 계산합니다.
     *
     * @param nums 정수 배열입니다.
     * @return 배열에서 동일한 쌍의 개수입니다.
     */
    public int numIdenticalPairs(int[] nums) {
        int counter = 0; // 동일한 쌍의 개수를 세는 변수

        // 배열의 각 요소를 반복합니다.
        for (int i = 0; i < nums.length; i++) {
            // 해당 요소와 배열의 나머지 요소를 비교합니다.
            for (int j = 0; j < nums.length; j++) {
                // 현재 인덱스 j의 요소가 인덱스 i의 요소와 동일한지 확인하고,
                // j가 i보다 큰지 확인하여 중복을 피합니다.
                if (nums[j] == nums[i] && j > i) {
                    counter++; // good pair이 발견되면 카운터를 증가시킵니다.
                }
            }
        }

        return counter; // 배열에서 동일한 쌍의 총 개수를 반환합니다.
    }
}
반응형