-2
我在LinkedList
insertAfter
功能不工作的權利內。插入鏈表
我真的很感激,如果有人能指出什麼是錯我的代碼。
謝謝:)
下面的列表結構:
struct ListItem
{
T value;
ListItem<T> *next;
ListItem<T> *prev;
ListItem(T theVal)
{
this->value = theVal;
this->next = NULL;
this->prev = NULL;
}
};
,這裏是我的功能列表中插入:
template <class T>
void LinkedList<T>::insertAfter(T toInsert, T afterWhat)
{
if(head!=NULL)
{
ListItem<T>*p;
p=head;
while(p->next!=NULL)
{
if(p->value==afterWhat)
{
ListItem<T>*k;
k=new ListItem<T>(toInsert);
k->next=p->next;
p->next=k;
k->prev=p;
k->next->prev=k;
}
else
p=p->next;
}
}
else
{
head= new ListItem<T>(toInsert);
}
//p=NULL;
}
這不是一個調試服務。請學習如何使用調試器。 – juanchopanza
獲取鏈接列表首先沒有模板,然後轉換爲模板。很容易。 –