ヘッダレス単一チェーンテーブルの非エンドノード削除
1673 ワード
ヘッドレス単一チェーンテーブルを削除する非テールノード解析:たとえばチェーンテーブル1->2->3->4ノード3を削除する場合は、ノード4を前に移動し、ノード3を削除します.
テスト:
void EraseNon Tail(ListNode* pos)
{
assert (pos&& pos->next);
ListNode* next=pos->next;
pos->data=next->data;
pos->data=next->next;
free(next);
}
テスト:
void TestList1()
{
ListNode*List=NULL;
PushBack(&List,1);
PushBack(&List,2);
PushBack(&List,3);
PushBack(&List,4);
}
ListNode*pos=Find(List,3);
EraseNonTail(pos);