오랜만에 LeetCode 75 시리즈의 문제해결로 돌아왔습니다. 오늘은 첫 번째 문제를 해결했는데, 쉽지만 까다로운 코너가 있었습니다. 제가 이 문제에 어떻게 접근했는지 공유하고 싶습니다.
두 개의 문자열 word1과 word2가 제공됩니다. word1부터 시작하여 교대로 문자를 추가하여 문자열을 병합합니다. 문자열이 다른 문자열보다 긴 경우 병합된 문자열 끝에 추가 문자를 추가합니다.
예:
입력: word1 = "abc",
word2 = "pqr"
출력: "apbqcr"
저는 솔루션을 세 부분으로 나누었습니다.
논리 확인: 먼저 어떤 단어의 길이가 가장 작은지 확인했습니다. 그런 다음 이 가장 작은 길이를 기반으로 루프를 반복했습니다. 한 단어가 다른 단어보다 길면 긴 단어의 나머지 문자를 문자열 끝에 추가했습니다.
루프 사용: 루프를 사용하여 각 문자열의 문자를 교체하고 병합했습니다.
최종 문자열 추가: 마지막으로 문자열을 결합하여 결과를 반환했습니다.
var mergeAlternately = function (word1, word2) { let str = ""; if (word2.length > word1.length) { for (let i = 0; i < word1.length; i++) { str = str + word1[i] + word2[i]; } str = str + word2.substring(word1.length); } else if (word1.length > word2.length) { for (let i = 0; i < word2.length; i++) { str = str + word1[i] + word2[i]; } str = str + word1.substring(word2.length); } else { for (let i = 0; i < word1.length; i++) { str = str + word1[i] + word2[i]; } } return str; }; console.log("result", mergeAlternately("abcd", "pq")); result: apbqcd
더 나은 솔루션이나 아이디어가 있으면 언제든지 공유해 주세요.
위 내용은 자바스크립트에서 문자열을 번갈아 병합의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!