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