2011-05-04 130 views
0

我有一個家庭作業問題,我必須:寫一個插入函數,它在存儲特定數據項的元素後面的列表的第一個位置插入一個元素。我也必須使用這個功能。我不明白問題在問什麼。有人能以更容易理解的方式向我解釋這個問題嗎?插入函數

#include "list.h" 

LINK lookup(DATA c, LINK head) 
{ 

if (head == NULL) 
    return NULL; 
else if (c == head -> d) 
     return head; 
    else 
     return (lookup(c, head -> next)); 
} 

回答

0

問題是要求您編寫一個函數,該函數在列表中找到指定的項目,然後在此位置後面的列表中插入新項目。

所以給出的列表

List = {Item1, Item2, Item3, Item4} 

你的功能List.Insert(Item2, Item5)(例如)應導致

List = {Item1, Item2, Item5, Item3, Item4} 
0

你有一個鏈表。該列表由LINK結構(更精確地說,它出現在LINK類型typedef定義爲一個指向實際節點結構。我們沒有在我們面前的定義,但想必每個LINK結構持有一個DATA結構以及常用的鏈接指針(一個或多個)。

你的任務是採取頭的最名單LINKDATA結構中,並通過搜索列表,直到找到具有第一LINKDATA等同於你給出的一個。然後,只是LINK之前插入新元素到列表中。

0

你被要求找到鏈表(功能lookup()會爲你做的)DATA c,然後插入以下ccDATA項之間的DATA項目。如果c是在列表中的最後DATA項目,那麼你對你的新DATA項目添加作爲最終DATA項目。如果該列表是空的,也就是說,如果lookup()回報NULL,那麼你的新DATA項目應當將被存儲爲唯一DATA列表中的項目。

爲什麼不張貼list.h相關的,因此,我們可以理解鏈表是什麼樣子?

這也將是後期整個lookup()功能是個好主意。

+0

''lookup()'函數中缺少的唯一東西是關閉''}''。 – 2011-05-04 08:39:36