코딩_Python(Level.0)

[Level.0] 글자 이어 붙여 문자열 만들기

Hong's_Computer 2026. 3. 6. 11:26
반응형

문제 설명: 문자열 my_string과 정수 배열 index_list가 매개변수로 주어집니다. my_string의 index_list의 원소들에 해당하는 인덱스의 글자들을 순서대로 이어 붙인 문자열을 return 하는 solution 함수를 작성해 주세요.

제한사항

  • 1 ≤ my_string의 길이 ≤ 1,000
  • my_string의 원소는 영소문자로 이루어져 있습니다.
  • 1 ≤ index_list의 길이 ≤ 1,000
  • 0 ≤ index_list의 원소 < my_string의 길이

문제 해결

def solution(my_string, index_list):
    answer = ''
    for idx in index_list:
        answer += my_string[idx]
    return answer


def solution(my_string, index_list):
    return ''.join(my_string[idx] for idx in index_list)

 

주석: 파이썬에서 문자열은 불변(Immutable) 객체이므로 += 연산자로 문자열을 반복 결합하면 매번 새로운 메모리가 할당되어 비효율적이다. 따라서 한 번의 메모리 할당만으로 문자열을 결합하는 ''.join() 메서드와 제너레이터 표현식을 사용하여 시간 복잡도와 메모리 효율을 모두 최적화했다.

반응형