‘인덱스 교체’
문제 설명
선 my_string 및 정수 1번, num2가 매개변수로 지정된 경우,
my_string의 인덱스 num1 및 인덱스 solve 함수를 완료하여 num2와 일치하는 문자가 교체된 문자열을 반환합니다.
I/O 예제 #1
- “hello”의 첫 번째 첨자 “e”와 두 번째 첨자 “l”을 바꾸면 “hlelo”가 됩니다.
I/O 예제 #2
- “I love you”의 세 번째 색인에서 “o”와 ” “(공백)을 바꾸면 “I l veoyou”가 됩니다.
-- 디스플레이광고 반응형 -->
자바 코드
class Solution {
public String solution(String my_string, int num1, int num2) {
String answer = "";
for (int i = 0; i < my_string.length(); i++) {
if (i==num1) answer += my_string.charAt(num2);
else if (i==num2) answer += my_string.charAt(num1);
else answer+= my_string.charAt(i);
}
return answer;
}
}
- 다른 솔루션
class Solution {
public String solution(String my_string, int num1, int num2) {
String() answer = my_string.split();
String tmp = answer(num1);
answer(num1) = answer(num2);
answer(num2) = tmp;
return String.join("",answer);
}
}
// swap
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import java.util.stream.Collectors;
class Solution {
public String solution(String myString, int num1, int num2) {
List<String> list = Arrays.stream(myString.split("")).collect(Collectors.toList());
Collections.swap(list, num1, num2);
return String.join("", list);
}
}
파이썬 코드
def solution(my_string, num1, num2):
answer =""
my_string = list(my_string)
my_string(num1),my_string(num2) = my_string(num2),my_string(num1)
answer += "".join(my_string)
return answer