zoukankan      html  css  js  c++  java
  • 206_Reverse Linked List

    Reverse a singly linked list.

    /**
     * Definition for singly-linked list.
     * struct ListNode {
     *     int val;
     *     struct ListNode *next;
     * };
     */
    struct ListNode* reverseList(struct ListNode* head) {
        if(head == NULL || head->next == NULL)
        {
            return head;
        }
        
        struct ListNode* p = head;
        struct ListNode* newHead = NULL;
        struct ListNode* insert = NULL;
        
        while(p != NULL)
        {
            struct ListNode* insert = (struct ListNode *)malloc(sizeof(struct ListNode));
            insert->val = p->val;
            insert->next = newHead;
            newHead = insert;
                
            p = p->next;
        }
        return newHead;
    }

    注:在代码中用head赋值的变量,除了控制循环一般不要改变它的值,因为会改变head与指向head的变量的值。

  • 相关阅读:
    HDU 4608 I-number
    hdu 4607 ( Park Visit )
    ZROI十一集训Day2
    CodeForces1230
    模拟退火
    ZROI#1007
    ZROI#1006
    ZROI#1005
    ZROI#1004
    ZROI#962
  • 原文地址:https://www.cnblogs.com/Anthony-Wang/p/5130619.html
Copyright © 2011-2022 走看看