單鏈表的逆序

2021-10-18 13:26:21 字數 846 閱讀 1166

對下面單鏈表進行逆序:

①首先定義n1,n2,n3三個指標,使n1=null,n2=head,n3=head->next

②然後將n2指向n1

③再令n1等於n2,n2等於n3

④在n3不等於null的情況下,令n3=n3->next

在n2不等於null的情況下,重複②③④步驟,直到將單鏈表逆置。

下面給出具體演算法**:

struct listnode*

reverselist

(struct listnode* head)

struct listnode* n1=

null

;struct listnode* n2=head;

struct listnode* n3=n2->next;

while

(n2!=

null

)return n1;

}

單鏈表逆序

include include typedef struct student student typedef struct list list,list list createlist void paixu list l 比較笨拙的一種方法 list reverse list l int main ...

單鏈表逆序

第二個題目是很經典的 單鏈表逆序 問題。很多公司的面試題庫中都有這道題,有的公司明確題目要求不能使用額外的節點儲存空間,有的沒有明確說明,但是如果面試者使用了額外的節點儲存空間做中轉,會得到乙個比較低的分數。如何在不使用額外儲存節點的情況下使乙個單鏈表的所有節點逆序?我們先用迭代迴圈的思想來分析這個...

單鏈表逆序

很經典的 單鏈表逆序 問題。很多公司的面試題庫中都有這道題,有的公司明確題目要求不能使用額外的節點儲存空間,有的沒有明確說明,但是如果面試者使用了額外的節點儲存空間做中轉,會得到乙個比較低的分數。如何在不使用額外儲存節點的情況下使乙個單鏈表的所有節點逆序?我們先用迭代迴圈的思想來分析這個問題,鍊錶的...