Christmas Pikachu 문자열 섞기
코딩테스트/프로그래머스

문자열 섞기

ZI_CO 2023. 9. 14.

https://school.programmers.co.kr/learn/courses/30/lessons/181942

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

[문제]

 

 

[정답]

class Solution {
    public String solution(String str1, String str2) {
        String result = "";
        
        for(int i = 0; i < str1.length(); i++){
            result += str1.substring(i, i + 1);
            result += str2.substring(i, i + 1);
        }
        return result;
    }
}

 

[풀이]

class Solution {
    // 문자열을 교차로 결합하는 메서드
    public String solution(String str1, String str2) {
        // 결과 문자열을 초기화
        String result = "";
        
        // 두 문자열의 길이만큼 반복
        for(int i = 0; i < str1.length(); i++){
            // str1에서 i 위치의 문자를 결과 문자열에 추가
            result += str1.substring(i, i + 1);
            // str2에서 i 위치의 문자를 결과 문자열에 추가
            result += str2.substring(i, i + 1);
        }
        
        // 최종 결과 문자열 반환
        return result;
    }
}

 

 

substring()

  • str1 문자열에서 인덱스 i부터 인덱스 i + 1 직전까지의 문자를 추출합니다.
  • i부터 i + 1 직전까지의 범위는 단 하나의 문자를 나타냅니다.
  • 예를 들어, i가 0이라면, 이 코드는 str1의 첫 번째 문자를 추출하게 됩니다.
  • 그리고 이 추출된 문자를 result 문자열에 추가합니다.

 

사용법 예시

문자열:  H e l l o ,   W o r l d !
인덱스:  0 1 2 3 4 5 6 7 8 9 10 11 12

substring(3, 8) 메서드를 호출하면,
추출된 부분 문자열: "lo , "

 

 

 

 

[풀이2]

위에 풀이에서는 문자열 인덱스값으로 원하는 문자열을 추출했다면 이번에는 문자열에서 문자 하나씩 반복문을 통해서 추출하여 변수에담아 결과를 얻는 방법이다.

class Solution {
    // 문자열을 교차로 결합하는 메서드
    public String solution(String str1, String str2) {
        // 결과 문자열을 초기화
        String result = "";
        
        // 두 문자열의 길이만큼 반복
        for(int i = 0; i < str1.length(); i++){
            // str1에서 i 위치의 문자를 추출
            char charFromStr1 = str1.charAt(i);
            
            // str2에서 i 위치의 문자를 추출
            char charFromStr2 = str2.charAt(i);
            
            // 추출한 문자들을 결과 문자열에 추가
            result += charFromStr1;
            result += charFromStr2;
        }
        
        // 최종 결과 문자열 반환
        return result;
    }
}

 

 

 

 

 

 

'코딩테스트 > 프로그래머스' 카테고리의 다른 글

두 수의 연산값 비교하기  (0) 2023.09.14
더 크게 합치기  (0) 2023.09.14
문자열 곱하기  (0) 2023.09.14
문자열 리스트를 문자열로 변환  (0) 2023.09.14
문자열 겹쳐쓰기  (0) 2023.09.13

댓글