Post

leetcode(리트코드)206-Reverse Linked List

leetcode(리트코드)206-Reverse Linked List

leetcode 206 - Reverse Linked List 문제입니다.

1. 문제

https://leetcode.com/problems/reverse-linked-list/


2. Input , Output


3. 분류 및 난이도

Eazy 난이도 문제입니다.
leetcode Top 100 Liked 문제입니다.


4. 문제 해석

  • LinkedList가 주어집니다. 뒤집어야합니다.

5. code

c++

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
/**
 * Definition for singly-linked list.
 * struct ListNode {
 *     int val;
 *     ListNode *next;
 *     ListNode() : val(0), next(nullptr) {}
 *     ListNode(int x) : val(x), next(nullptr) {}
 *     ListNode(int x, ListNode *next) : val(x), next(next) {}
 * };
 */
class Solution {
public:
    void save(ListNode* head,vector<int>& vec)
    {
        if(head!=nullptr)
        {

            vec.push_back(head->val);
            save(head->next,vec);
        }
        
    }
    //재귀
    void put(ListNode* node,vector<int>& vec,int count)
    {
        if(node!=nullptr)
        {
            node->val = vec[count--];
            put(node->next,vec,count);
        }
    }
    //for문
    void put2(ListNode* node,vector<int>& vec,int count)
    {
        for(;count>=0;--count)
        {
            node->val = vec[count];
            node=node->next;
        }
    }
    ListNode* reverseList(ListNode* head) {
        ListNode* savenode = head;
        vector<int> vec;
        save(savenode,vec);
        savenode= head;
        //put(head,vec,vec.size()-1);
        //put2(head,vec,vec.size()-1);
        //수정 구문
        ListNode* prev= nullptr;
        ListNode* next;
        while(savenode!=nullptr)
        {
            next = savenode->next;
            savenode->next = prev;
            prev = savenode;
            savenode=next;
        }
        
        return prev;
    }
};

6. 결과 및 후기, 개선점

코드에 대한 설명이 필요하신 분은 댓글을 달아주세요.!!

c++ 72%

코드를 개선하였으나 시간차이가 별로 없었다..

아이디어만 배워갔다.

This post is licensed under CC BY 4.0 by the author.