資料結構 逆序資料建立鍊錶

2021-09-28 20:24:49 字數 809 閱讀 4796

本題要求實現乙個函式,按輸入資料的逆序建立乙個鍊錶。

struct listnode *createlist();
函式createlist利用scanf從輸入中獲取一系列正整數,當讀到−1時表示輸入結束。按輸入資料的逆序建立乙個鍊錶,並返回煉表頭指標。鍊錶節點結構定義如下:

struct listnode ;
#include #include struct listnode ;

struct listnode *createlist();

int main()

/* 你的**將被嵌在這裡 */

1 2 3 4 5 6 7 -1
7 6 5 4 3 2 1
這題主要考察鍊錶的鏈式儲存基礎內容,考核對鍊錶的理解與運用,包括如何構建鍊錶,頭插法插入元素。

注:此題需仔細觀察主函式,主函式裡直接引用的頭節點,所以在返回時需要跳過空的頭節點。

struct listnode *

createlist()

/*首先構造空表,然後利用頭查法依次插入元素,返回時應該跳過未儲存元素的頭節點l*/

return l->next;

}

while (scanf("%d" &a) && a != -1),這裡有更好的寫法,可以將其替換成while ((scanf("%d", &a), a) != -1),我當時在寫這個題的時候沒有想起來,在實現的時候可以換一下,讓**更精煉。

逆序資料建立鍊錶 20分

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

資料結構實驗之鍊表二 逆序建立鍊錶

description 輸入整數個數n,再輸入n個整數,按照這些整數輸入的相反順序建立單鏈表,並依次遍歷輸出單鏈表的資料。input 第一行輸入整數n 第二行依次輸入n個整數,逆序建立單鏈表。output 依次輸出單鏈表所存放的資料。sample input 10 11 3 5 27 9 12 43...

資料結構實驗之鍊表二 逆序建立鍊錶

time limit 1000ms memory limit 65536k 輸入整數個數n,再輸入n個整數,按照這些整數輸入的相反順序建立單鏈表,並依次遍歷輸出單鏈表的資料。第一行輸入整數n 第二行依次輸入n個整數,逆序建立單鏈表。依次輸出單鏈表所存放的資料。10 11 3 5 27 9 12 43...