listremove.cpp
来自「C++&datastructure书籍源码,以前外教提供现在与大家共享」· C++ 代码 · 共 20 行
CPP
20 行
void Remove(Node * header, const string& key)
// post: all nodes containing key removed from list/header
{
Node * before = header;
Node * list = header->next; // first "real node"
// invariant: list = before->next, key doesn't appear in header->..->before
while (list != 0)
{ if (list->info == key)
{ before->next = list->next; // link around
delete list;
list = before->next; // invariant maintained
}
else // invariant maintained
{ before = list;
list = list->next;
}
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?