title: 每日一練(13):反轉鍊錶
categories:[劍指offer]
tags:[每日一練]
date: 2022/01/26
定義乙個函式,輸入乙個鍊錶的頭節點,反轉該鍊錶並輸出反轉後鍊錶的頭節點。
示例:輸入: 1->2->3->4->5->null
輸出: 5->4->3->2->1->null
限制:0 <= 節點個數 <= 5000
具體過程如下:
假設鍊錶為 1→2→3→∅,我們想要把它改成∅←1←2←3。
在遍歷鍊錶時,將當前節點的 next 指標改為指向前乙個節點。由於節點沒有引用其前乙個節點,因此必須事先儲存其前乙個節點。在更改引用之前,還需要儲存後乙個節點。最後返回新的頭引用。
複雜度分析
listnode* reverselist(listnode* head)
listnode *prev = nullptr;
listnode *curr = head;//雙指標解法
while (curr)
return prev;
}
複雜度分析
listnode* reverselist(listnode* head)
listnode* newhead = reverselist(head->next);
head->next->next = head;
head->next = nullptr;
return newhead;
}
每日一練 13
談談你對ajax 的理解?概念 特點 作用 select 教師號,sum case when 星期號 1 and 是否有課 有 then 1 else 0 end as 星期一,sum case when 星期號 2 and 是否有課 有 then 1 else 0 end as 星期二,sum c...
每日一練(10) 刪除鍊錶的節點
title 每日一練 10 刪除鍊錶的節點 categories 劍指offer tags 每日一練 date 2022 01 23 給定單向鍊錶的頭指標和乙個要刪除的節點的值,定義乙個函式刪除該節點。返回刪除後的鍊錶的頭節點。注意 此題對比原題有改動 示例 1 輸入 head 4,5,1,9 va...
每日一練4
員工表emp 員工編號eid,姓名ename,工作職位title,僱傭日期hiretime,工資salary,獎金bonus,部門depart 部門表dept 部門編號did,名稱dname,部門領導leader 員工資料 1001,張三 銷售 1999 12 1 3000.0,1100.0,102...