'파이썬 알고리즘 인터뷰'를 보고 작성한 글입니다. 😀
문제 👉 <Odd Even Linked List - LeetCode>
1. 문제 (홀짝 연결리스트)
연결 리스트를 홀수 노드 다음에 짝수 노드가 오도록 재구성해라.
공간 복잡도 O(1), 시간 복잡도 O(n)에 풀이하라.
2. 풀이
반복문
을 이용한 풀이
3. 코드
- 반복문을 이용한 풀이
# Definition for singly-linked list.
# class ListNode:
# def __init__(self, val=0, next=None):
# self.val = val
# self.next = next
class Solution:
def oddEvenList(self, head: ListNode) -> ListNode:
#종료 조건
if not head:
return None
odd, even = head, head.next
even_head = head.next # 홀,짝 리스트를 연결하기 위해 필요!!
while even and even.next:
odd.next, even.next = even.next, even.next.next
odd, even = odd.next, even.next
odd.next = even_head
return head
- 결과 :
방식 | Status | Runtime | Memory | Language |
---|---|---|---|---|
반복문 | [Accepted] | 36 ms | 16.3 MB | python3 |
References
🏋🏻 개인적으로 공부한 내용을 기록하고 있습니다.
잘못된 부분이 있다면 과감하게 지적해주세요!! 🏋
'Coding Test > LeetCode' 카테고리의 다른 글
[LeetCode] 3. Longest Substring Without Repeating Characters [Python(파이썬)] (0) | 2021.11.23 |
---|---|
[LeetCode] 234. Palindrome Linked List [Python(파이썬)] (0) | 2021.11.23 |
[LeetCode] 206. Reverse Linked List [Python(파이썬)] (0) | 2021.11.23 |
댓글