剑指offer - 从尾到头打印链表

  真的觉得这 OJ 有毒。。。又是段错误,本地测试 gcc、msvc 没问题,看来得装个 clang 试试,= = 唉。。

  以前的那个是参考别人的,然后时隔这么长,这次是自己实现的。

struct ListNode
{
    int val;
    struct ListNode* next;
    ListNode(int x) :
        val(x), next(NULL) {
    }
};

class Solution {
private:
    

public:
    vector<int> printListFromTailToHead(ListNode* head) {
        vector<int> node;
        ListNode* ph = head;
        ListNode* p = head->next;
        ph->next = nullptr;
        
        while (p != nullptr)
        {
            ListNode* n = p->next;
            p->next = ph;
            ph = p;
            p = n;
        }
        while (ph)
        {
            ListNode* q = ph;
            node.push_back(ph->val);
            ph = ph->next;
            delete q;
        }
        return node;
    }
};

  

上一篇:NOI 奶酪


下一篇:Stata基础:数据显示格式和四舍五入