자료구조알고리즘/문제풀이
[프로그래머스][Lv.0] 문자열 뒤집기
포시
2022. 12. 27. 15:06
728x90
문제
https://school.programmers.co.kr/learn/courses/30/lessons/120822
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
내 풀이
def solution(my_string):
answer = list(reversed([*my_string]))
return ''.join(answer)
생각나는 방법대로 풀었는데 너무 어렵게 생각한게 아닐까 계속 고민되는 풀이다.
reversed() 함수를 쓴 것도 안쓰고 할 수 있는 방법이 없었을까 하는 생각이 계속 드는중
다른 풀이 A
def solution(my_string):
return ''.join(list(reversed(my_string)))
내가 푼 방법과 유사한데, 이 코드를 보면 reversed는 list, string에 상관없이 거꾸로 만든 다음 list로 반환하는듯 싶다.
공식문서에서 확인해보고 싶은데 Python은 https://developer.mozilla.org/ 같은 곳이 없는지 사람들이 정리한 블로그만 나온다..
다른 풀이 B
def solution(my_string):
return my_string[::-1]
Python 문자열 다루는 방법으로 [:]를 알고 있긴 했는데 이런 방법은 처음 봤다.
https://itholic.github.io/python-reverse-string/
[python] 문자열 거꾸로 출력하기 [::-1]
문자열 거꾸로 출력하기
itholic.github.io
이 블로그를 통해 알아본 결과 [시작:끝:증가]와 같이 사용할 수 있는데 전체에 대해서는 생략을 할 수 있다.
고로, [::-1]은 전체에 대해 -1을 해나가는 방식
test = '123456789'
print(test[5:1:-1]) # 6543
이런식으로도 사용할 수 있다.
728x90