► JS Algorithm/Programmers
[Programmers] JavaScript 알고리즘 | Lv.0 인덱스 바꾸기
다람트리
2024. 1. 9. 21:27
반응형
🔒 문제 설명
문자열 my_string과 정수 num1, num2가 매개변수로 주어질 때, my_string에서 인덱스 num1과 인덱스 num2에 해당하는 문자를 바꾼 문자열을 return 하도록 solution 함수를 완성해보세요.
🔒 제한사항
- 1 < my_string의 길이 < 100
- 0 ≤ num1, num2 < my_string의 길이
- my_string은 소문자로 이루어져 있습니다.
- num1 ≠ num2
🔒 입출력 예
my_string | num1 | num2 | result |
"hello" | 1 | 2 | "hlelo" |
"I love you" | 3 | 6 | "I l veoyou" |
🔒 입출력 예 설명
입출력 예 #1
- "hello"의 1번째 인덱스인 "e"와 2번째 인덱스인 "l"을 바꾸면 "hlelo"입니다.
입출력 예 #2
- "I love you"의 3번째 인덱스 "o"와 " "(공백)을 바꾸면 "I l veoyou"입니다.
🔐 solution of mine
Array.map()
Array.join()
const solution = (my_string, num1, num2) =>
console.log(
[...my_string]
.map((v, i) =>
i === num1 ? my_string[num2] : i === num2 ? my_string[num1] : v
)
.join("")
);
solution("hello", 1, 2); // expected output: "hlelo"
solution("I love you", 3, 6); // expected output: "I l veoyou"
🔐 solution of others
Array.split()
Array.join()
구조분해할당
const solution = (my_string, num1, num2) => {
my_string = my_string.split("");
[my_string[num1], my_string[num2]] = [my_string[num2], my_string[num1]];
return console.log(my_string.join(""));
};
solution("hello", 1, 2); // expected output: "hlelo"
solution("I love you", 3, 6); // expected output: "I l veoyou"
반응형