📖이 포스팅은 '파이썬 알고리즘 인터뷰 - 박상길님'을 보고 작성되었습니다.
😎문제 : https://leetcode.com/problems/letter-combinations-of-a-phone-number/
연결 리스트를 입력받아 페어(Pair) 단위로 스왑하라
[값만 교환]
class Solution:
def swapPairs(self, head: ListNode) -> ListNode:
current = head
while current and current.next:
current.val , current.next.val = current.next.val, current.val
current = current.next.next
return head
- 노드 구조는 그대로 유지하며 값만 변경해주면 되는 문제이기 때문에 쉽게 바꿀 수 있다.
- 실제로는 값만 바꾸는 것은 매우 어렵다 그러나 이 경우엔 단 하나의 값으로 구성된 단순 연결 리스트이기 때문에 값을 바꾸는 정도는 그다지 어렵지 않다.
- 2칸씩 진행하기 때문에 current.next.next를 진행해준다.
- 파이썬은 객체이기 때문에 current를 head로 같은 참조를 복사해서 값을 변경해주는 방식으로 진행??
'자료구조와 알고리즘 > 🥑알고리즘' 카테고리의 다른 글
[알고리즘][스택 & 큐] - 2. 중복 문자 제거 (0) | 2022.03.01 |
---|---|
[알고리즘][스택 & 큐] - 1. 유효한 괄호 (0) | 2022.03.01 |
[알고리즘][연결 리스트] - 4. 두 수의 덧셈 (0) | 2022.02.26 |
[알고리즘][연결 리스트] - 3. 역순 연결 리스트 (0) | 2022.02.26 |
[알고리즘][연결 리스트] - 2. 두 정렬 리스트의 병합 (0) | 2022.02.24 |