[LeetCode]206.ReverseLinkedList

206. Reverse Linked List

成都創(chuàng)新互聯(lián)主要從事網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)、網(wǎng)頁設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)丹江口,十余年網(wǎng)站建設(shè)經(jīng)驗(yàn),價格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):028-86922220

Reverse a singly linked list.


反轉(zhuǎn)鏈表:

1)對于空鏈表或者一個節(jié)點(diǎn)鏈表無需反轉(zhuǎn),返回即可。


設(shè)計(jì)思路:

1)首先把當(dāng)前節(jié)點(diǎn)外的剩下節(jié)點(diǎn)保存在next中。

2)處理當(dāng)前節(jié)點(diǎn),主要把當(dāng)前節(jié)點(diǎn)的next指針指向部分反轉(zhuǎn)鏈表list中。

3)再把加入了當(dāng)前節(jié)點(diǎn)的的head賦值給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 *list = NULL;
    struct ListNode *next = NULL;
    for ( ; head; head = next )
    {
        next = head->next;
        head->next = list;
        list = head;
    }
    return list;
}

設(shè)計(jì)盲區(qū):不要老想著對新鏈表指向list進(jìn)行處理,換位思考處理head,會節(jié)省不少代碼量

文章標(biāo)題:[LeetCode]206.ReverseLinkedList
本文URL:http://bm7419.com/article44/igepee.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站維護(hù)、網(wǎng)站設(shè)計(jì)公司、網(wǎng)站改版、品牌網(wǎng)站建設(shè)、移動網(wǎng)站建設(shè)動態(tài)網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都app開發(fā)公司