[Java Algorithm] 프로그래머스 Lv.0 _ 수열과 구간 쿼리 3

2025. 2. 24. 10:57·Algorithm Study

[문제]

정수 배열 arr와 2차원 정수 배열 queries이 주어집니다. queries의 원소는 각각 하나의 query를 나타내며, [i, j] 꼴입니다.
각 query마다 순서대로 arr[i]의 값과 arr[j]의 값을 서로 바꿉니다.
위 규칙에 따라 queries를 처리한 이후의 arr를 return 하는 solution 함수를 완성해 주세요.

 

[Algorithm]

반복문을 통해 queries의 원소인 query를 모두 확인하여 query의 원소를 arr 배열 인덱스에 대입하기

 

[Code]

class Solution {
   public int[] solution(int[] arr, int[][] queries) {

        int n = 0;
        for(int i =0; i<queries.length; i++){
            n = arr[queries[i][0]];
            arr[queries[i][0]] = arr[queries[i][1]];
            arr[queries[i][1]] = n;
        }
        return arr;
    }
}

 

arr[j]가 queries[i][1] 이라는 것을 아는 것이 중요했던 것 같음 !

 

머리로 어떻게 풀어야하는지는 알겠는데 구현을 어떻게 해야할지 모르겠어서 결국 검색해봄 ;

2차원 배열을 활용하는 것이 어렵다 -

 

[+ 다른 사람 풀이]

class Solution {
    public int[] solution(int[] arr, int[][] queries) {

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

        return arr;
    }
}

 

위 코드도 깔끔하고 가독성이 좋은 것 같음

int i = query[0], j = query[1]로 먼저 선언해주니까 코드가 더 간결해져서 보기 편한 것 같다

 

저작자표시 변경금지 (새창열림)

'Algorithm Study' 카테고리의 다른 글

[Java Algorithm] 프로그래머스 Lv.0 _ 콜라츠 수열 만들기  (0) 2025.02.25
[Java Algorithm] 프로그래머스 Lv.0 _ 수열과 구간 쿼리 2  (0) 2025.02.24
[Java Algorithm] 프로그래머스 Lv.0 _ 등차수열의 특정한 항만 더하기  (0) 2024.10.31
[Java Algorithm] 프로그래머스 Lv.0 _ 코드 처리하기  (0) 2024.10.30
[Java Algorithm] 프로그래머스: 해시 _ 완주하지 못한 선수  (0) 2024.07.11
'Algorithm Study' 카테고리의 다른 글
  • [Java Algorithm] 프로그래머스 Lv.0 _ 콜라츠 수열 만들기
  • [Java Algorithm] 프로그래머스 Lv.0 _ 수열과 구간 쿼리 2
  • [Java Algorithm] 프로그래머스 Lv.0 _ 등차수열의 특정한 항만 더하기
  • [Java Algorithm] 프로그래머스 Lv.0 _ 코드 처리하기
microsaurs
microsaurs
개발 스터디로그입니다. 공부한 내용을 정리해서 올립니다 ㅇ-ㅇ
  • microsaurs
    microsaurs.devlog
    microsaurs
  • 전체
    오늘
    어제
    • 분류 전체보기 (138)
      • Algorithm Study (39)
      • JAVA (8)
      • Swift (11)
      • Python (21)
      • CS (5)
      • React (3)
      • 리얼클래스 studylog (27)
      • 정보처리기사[실기] (23)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    정보처리기사프로그래밍언어
    정보처리기사실기
    영어독학
    Python
    ios프로그래밍을위한스위프트기초
    Algorithm
    정보처리기사
    나도코딩
    영어회화
    The Office
    리얼학습일기
    더오피스
    javaalgorithm
    리얼클래스
    파이썬기초
    javaStudy
    ios프로그래밍
    Java
    알고리즘
    프로그래머스
    정처기실기
    파이썬
    SWIFT
    자바알고리즘
    study
    ios개발
    프로그래밍언어
    타일러영어
    파이썬문법
    스위프트기초
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
microsaurs
[Java Algorithm] 프로그래머스 Lv.0 _ 수열과 구간 쿼리 3
상단으로

티스토리툴바