3月7日
错误做法:
解法:遍历一遍即可,因为是已经排好序的链表,相同元素肯定是连续的,所以每次只需判断下一个节点的值是否与本节点的值相同,相同删除即可。最后返回头节点即可。
注意c++中必须手动释放内存,即用delete释放节点。
注意:
1)因为C++是强类型语言,void*是不能隐式转换成其他类型的指针的。因为C++中不能把void*类型的指针隐式转换成其他类型的指针,所以为了结果空指针的表示问题,C++引入了0来表示空指针,这样就有了上述代码中的NULL宏定义。
但是实际上,用NULL代替0表示空指针在函数重载时会出现问题,程序执行的结果会与我们的想法不同。
因此,c++11新标准引入了nullptr,将其作为空指针常量。故以后空指针尽量用nullptr。
2)释放空间。