將乙個鍊錶按逆序排列,即將鏈頭當鍊尾,鏈尾當鏈頭。

2021-10-13 02:59:58 字數 746 閱讀 1000

將乙個鍊錶按逆序排列,即將鏈頭當鍊尾,鏈尾當鏈頭。

程式的執行示例如下:

請輸入鍊錶(非數表示結束)

結點值:3

結點值:4

結點值:5

結點值:6

結點值:7

結點值:end

原來表:

3 4 5 6 7

反轉表:

7 6 5 4 3

#include

#include

typedef

struct link

link;

void

reverse

(link *p)

;int

main()

else

tail=p;

tail->next=

null;}

else

break;}

while(1

);pr=head;

printf

("\n原來表:\n");

dowhile

(pr!=

null);

printf

("\n\n反轉表:\n");

reverse

(head);}

void

reverse

(link *p)

printf

("%4d"

,p->data)

;}

將乙個鍊錶按逆序排列

本 的作用是將乙個鍊錶按逆序排列,若煉表為空鍊錶或只含有乙個結點則無需進行處理。在主函式中建立乙個空鍊錶,然後用頭插法依次插入元素,則其資料域依次存入的值為 8,7,6,5,4,3,2,1,在reverse函式中對其進行逆序處理。若不是空鍊錶或只有乙個結點的鍊錶則繼續對其進行操作。用p1,p2,p3...

逆序建立乙個鍊錶

本題要求實現乙個函式,按輸入資料的逆序建立乙個鍊錶。函式介面定義 struct listnode createlist 函式createlist利用scanf從輸入中獲取一系列正整數,當讀到 1時表示輸入結束。按輸入資料的逆序建立乙個鍊錶,並返回煉表頭指標。鍊錶節點結構定義如下 struct lis...

將乙個鍊錶進行反轉

面試題16 反轉鍊錶 定義乙個函式,輸入鍊錶的頭結點,反轉該鍊錶並輸出反轉後鍊錶的頭結點。struct listnode 建立鍊錶 listnode createlistnode int value 連線鍊錶的兩個結點 void connectlistnode listnode pcurrent,l...