인덱스 바꾸기

Wook·2024년 10월 5일

🧩코딩테스트

목록 보기
44/46
post-thumbnail

문제

문자열 my_string과 정수 num1, num2가 매개변수로 주어질 때, my_string에서 인덱스 num1과 인덱스 num2에 해당하는 문자를 바꾼 문자열을 return 하도록 solution 함수를 완성해보세요.

조건

  • 1 < my_string의 길이 < 100
  • 0 ≤ num1, num2 < my_string의 길이
  • my_string은 소문자로 이루어져 있습니다.
  • num1 ≠ num2

예시

my_stringnum1num2result
"hello"12"hlelo"
"I love you"36"I l veoyou"

풀이

  • 인덱스를 사용하고 문자를 바꿔야 하므로 먼저 주어진 문자열 my_string을 배열로 바꾼다 -> my_string.toCharArray()
  • 두 값을 교환하므로 중간에 값을 저장할 임시적인 변수가 필요하여 선언할 수도 있지만 교체할 값은 주어진 my_string에서도 char 타입으로 그대로 가져올 수 있다
  • 값을 모두 교체한 뒤 char 배열을 String 타입으로 다시 변환하여 반환한다
    -> String.valueOf(char[] arr)

코드

class Solution {

    public String solution(String my_string, int num1, int num2) {
        char[] arr = my_string.toCharArray();

        arr[num1] = my_string.charAt(num2);
        arr[num2] = my_string.charAt(num1);

        return String.valueOf(arr);
    }
}
profile
Keep going

0개의 댓글