알고리즘 테스트 공부

수열과 구간 쿼리 3

&u_na& 2023. 12. 28. 23:12

class Solution {
    public int[] solution(int[] arr, int[][] queries) {
        for (int[] query : queries) {
            int i = query[0];
            int j = query[1];
            int temp = arr[i];
            arr[i] = arr[j];
            arr[j] = temp;
        }
        return arr;
    }
}

2차원배열 공부좀더 하자아아아 이해가 부족한듯!!

 

다른풀이!!

import java.util.Arrays;

class Solution {
    public int[] solution(int[] arr, int[][] queries) {
        int[] answer = Arrays.copyOf(arr, arr.length);

        for (int[] query : queries) {
            int i = query[0];
            int j = query[1];

            int temp = answer[i];
            answer[i] = answer[j];
            answer[j] = temp;
        }

        return answer;
    }
}
class Solution {
    public int[] solution(int[] arr, int[][] queries) {
        int[] answer = {};

        for(int i = 0; i < queries.length; i ++){
            int one = arr[queries[i][0]];
            int two = arr[queries[i][1]];

            //System.out.println("One: " + one + ", Two: " + two);

            arr[queries[i][0]] = two;
            arr[queries[i][1]] = one;
        }

        return arr;
    }
}