如何在非模板化的C ++ linkedList中实现find函数?
删除功能按以下方式实现:
bool LinkedList::remove(Node* n)
{
Node *temp = front, *prev = 0;
for(int i = 0;i < size; i++)
{
if (temp == n)
{
if (temp == front)
{
front = n->next;
}
else
{
prev->next = temp->next;
}
delete temp;
size --;
return true;
}
prev = temp;
temp = temp->next;
}
return false;
}
答案 0 :(得分:1)
这是一个提示:remove()
函数已经完成了find()
几乎所有需要做的事情。你只需要确定要保留哪些位以及要删除哪些位。你需要添加的东西是最小的,如果有的话。它取决于find()
的API,您没有指定。