→ 연결 리스트가 팰린드롬 구조인지 판별하라
→ [1, 2] // False
→ [1, 2, 2 ,1] // True
def isPalindrome(head):
arr = []
# 연결리스트가 없을 경우
if not head:
return True
node = head
# 연결리스트가 끝날때까지
while node:
# 리스트에 연결리스트의 값 넣기
arr.append(node.val)
node = node.next
# 리스트 길이가 2개이상일 때 실행.
while len(arr) > 1:
# 리스트에서 양쪽 하나씩 제거
# 양쪽 하나씩 다를경우 팰린드롬이 아니므로 False
if arr.pop(0) != arr.pop():
return False
return True