목록파이썬/알고리즘 이론 (2)
유자차의 재테크 공부방
문자열을 뒤집는 여러가지 방법들 첫번째 방법은 포인터를 활용하는 것과 같이 양끝의 문자열을 바꾸어주며 뒤집음 def reverseString(s): left, right = 0, len(s)-1 while left < right: s[left], s[right] = s[right], s[left] left+=1 right-=1 return s 두번째 방법은 리스트의 reverse() 기능을 사용하여, 뒤집어 줍니다. def reverseString(s): s.reverse() return s 세번째 방법은 슬라이싱을 사용하여 뒤집어 줍니다. def reverseString(s): s = s[::-1] # s[:] = s[::-1]로도 가능 return s
팰린드롬이란 문자와 숫자로 이루어진 문자열이며, 뒤집어도 똑같은 문자열 예로 이효리와 같이 뒤집어도 이(리)효리로 같은 문자열을 말한다. 팰린드롬인지 확인하는 방법으로 3가지를 만들었습니다. 맨 마지막 방법이 속도면에서 가장 빠른 방법입니다. 첫번째 방법은 isalnum()으로 문자열에서 문자와 숫자를 제외한 특수문자 같은 것을 걸러줍니다. 다음, pop()을 사용하여, 앞뒤로 문자를 뽑아주며 팰린드롬인지 확인합니다. def isPalindrome(s): strs=[] for char in s: if char.isalnum(): strs.append(char) # 팰린드롬 여부 판단 while len(strs) > 1: if strs.pop(0) != strs.pop(): return False retu..