위지원의 데이터 일기 🐈
Home
  • 분류 전체보기 (563)
    • ✎ 2025년 (4)
    • 2024년 (16)
    • 2023년 (6)
    • 2022년 (35)
      • Developement (22)
      • Error (9)
    • 2021년 (68)
      • ERROR (9)
      • 알고리즘 (11)
      • 개발공부 (21)
      • Data (15)
      • 21.下 (12)
    • 2020년 (164)
      • 코테 (84)
      • Development (29)
      • 정처기 (41)
    • 2019년 (27)
    • 2018년 (89)
      • English Speaking (8)
      • Error (12)
      • C, Java, FileSystem (13)
      • DataBase (15)
      • Java (2)
      • 지식 (16)
      • Go (3)
      • spark (9)
      • 영어 (5)
      • 알고리즘 (6)
    • 2017년 (143)
      • Error (17)
      • machine learning (16)
      • Spark (20)
      • Database (19)
      • Python (17)
      • Spring (9)
      • etc. (10)
      • 백준 (5)
      • Google Platform (12)
      • web Development (7)
      • Docker (3)
      • Linux (8)
Home
  • 분류 전체보기 (563)
    • ✎ 2025년 (4)
    • 2024년 (16)
    • 2023년 (6)
    • 2022년 (35)
      • Developement (22)
      • Error (9)
    • 2021년 (68)
      • ERROR (9)
      • 알고리즘 (11)
      • 개발공부 (21)
      • Data (15)
      • 21.下 (12)
    • 2020년 (164)
      • 코테 (84)
      • Development (29)
      • 정처기 (41)
    • 2019년 (27)
    • 2018년 (89)
      • English Speaking (8)
      • Error (12)
      • C, Java, FileSystem (13)
      • DataBase (15)
      • Java (2)
      • 지식 (16)
      • Go (3)
      • spark (9)
      • 영어 (5)
      • 알고리즘 (6)
    • 2017년 (143)
      • Error (17)
      • machine learning (16)
      • Spark (20)
      • Database (19)
      • Python (17)
      • Spring (9)
      • etc. (10)
      • 백준 (5)
      • Google Platform (12)
      • web Development (7)
      • Docker (3)
      • Linux (8)
블로그 내 검색
포트폴리오

위지원의 데이터 일기 🐈

데이터를 사랑하고 궁금해하는 기록쟁이입니다! 😉 Super Data Girl이 되는 그날까지🏃‍♀️ 화이팅!

  • 🖥 깃블로그
  • 🌍 위키원
  • 📑 내맘대로 스크랩
  • 💌 메일
  • 2021년/알고리즘

    [파이썬 알고리즘 인터뷰] 페어의 노드 스왑

    2021. 3. 23. 21:55

    by. 위지원

    (17) 페어의 노드 스왑 

    ★★ Normal

     

    [LeetCode]

    leetcode.com/problems/swap-nodes-in-pairs/

     


    풀이법

     1. 단순 swap

    이게 왜 노말인지 모르겠다. 처음에 easy가 훨씬 더 어려웠다. 연결리스트를 그 때 처음 다뤄서 그런건가?

     

    PYTHON

     

     

    onlybooks/algorithm-interview

    <파이썬 알고리즘 인터뷰> 95가지 알고리즘 문제 풀이로 완성하는 코딩 테스트. Contribute to onlybooks/algorithm-interview development by creating an account on GitHub.

    github.com

     

    JAVA

    class Solution {
        public ListNode swapPairs(ListNode head) {
            ListNode cur = head;
            
            while(cur!=null && cur.next !=null){
                int tmp = cur.val;
                cur.val = cur.next.val;
                cur.next.val = tmp;
                cur = cur.next.next;
            }
            return head;
            
        }
    }

     

     

    2. 반복 구조로 스왑

    음.. 1번 방법은 면접관이 안된다고 할 수도 있다고한다.  그래서 실제로 .next를 노드를 가르키게 구조적으로 바꿀 필요가 있다.

    원래 처음에 이 생각을 했는데, 1번 풀이보고 와! 그러네 val값만 변경하면 되는데 !! 이러고 띠용했는데.. 다시 반전이다 띠용? 🧐

     

    class Solution:
        def swapPairs(self, head: ListNode) -> ListNode:
            
            root = prev = ListNode()
            prev.next = head
            
            while head and head.next:
                b = head.next
                head.next = b.next
                b.next = head
                
                prev.next = b
                
                head = head.next
                prev = prev.next.next
                
            return root.next

     

    3. 재귀

    class Solution:
        def swapPairs(self, head: ListNode) -> ListNode:
            if head and head.next:
                p = head.next
                head.next = self.swapPairs(p.next)
                p.next = head
                return p
            
            return head

     

     

    저작자표시 (새창열림)

    '2021년 > 알고리즘' 카테고리의 다른 글

    [파이썬 알고리즘 인터뷰] 역순 연결리스트 2  (1) 2021.03.31
    [파이썬 알고리즘 인터뷰] 역순 연결리스트  (0) 2021.03.31
    [파이썬 알고리즘 인터뷰] 역순 연결 리스트  (0) 2021.03.22
    파이썬을 파이썬답게  (0) 2021.03.22
    [파이썬 알고리즘 인터뷰] 두 정렬 리스트의 병합  (0) 2021.03.22

    잠깐만요~! 읽으신김에 이런 글들은 어떠세요? 👀

    • [파이썬 알고리즘 인터뷰] 역순 연결리스트 2 2021.03.31
    • [파이썬 알고리즘 인터뷰] 역순 연결리스트 2021.03.31
    • [파이썬 알고리즘 인터뷰] 역순 연결 리스트 2021.03.22
    • 파이썬을 파이썬답게 2021.03.22
    맨 위로
전체 글 보기
Tistory 로그인
Tistory 로그아웃
로그아웃 글쓰기 관리

열정! 열정! 열정! 🔥

Designed by Nana
블로그 이미지
위지원
데이터 엔지니어로 근무 중에 있으며 데이터와 관련된 일을 모두 좋아합니다!. 특히 ETL 부분에 관심이 가장 크며 데이터를 빛이나게 가공하는 일을 좋아한답니다 ✨

티스토리툴바

티스토리툴바