9_10.cpp

来自「c++案例教程源代码」· C++ 代码 · 共 20 行

CPP
20
字号
#include <iostream>
#include "9_9.h"
#include "9_9.cpp"
using namespace std;

void RemoveDuplicates(LinkedList<int> & L)
{	int currPos,currValue; 	//当前表位置和数据值
	L.Reset();				//指针指向表头
	while(!L.EndOfList())	//遍历链表
	{	currValue=L.Data();	//记录当前节点的数据值
		currPos=L.CurrentPosition();	//记录当前节点的位置
		L.Next();						//移到下一个节点
		while(! L.EndOfList())			//移到表尾,删除所有具有CurrValue的结点
			if(L.Data()==currValue) L.DeleteAt();//删除结点,当前位置为下一个结点
			else		L.Next();					//移到下一个结点
		L.Reset(currPos); 		//重置链表,移动到第一个结点
		L.Next();				//移到下一个结点
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?