[C++]链表中删除连续重复出现的结点
来源:互联网 发布:藏宝阁秒号软件 编辑:程序博客网 时间:2024/06/05 02:29
// DeleteDuplicateNode.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include <cstdlib>#include <iostream>using std::cout;using std::endl;typedef struct SNode { int value; SNode * pNext; SNode(int v):value(v),pNext(NULL){}}SNode;void Print(SNode* head) { SNode* p = head->pNext; while (p) { cout << p->value; p = p->pNext; if (p) cout << "->"; } cout << endl;}void Delete(SNode* head) { while (head) { SNode* t = head; head = head->pNext; delete t; }}void DeleteDuplicateNode(SNode* head) { SNode* p = head->pNext; SNode* p1 = p; p = p->pNext; while(p) { if (p1->value == p->value) { SNode* temp = p; p = p->pNext; p1->pNext = p; delete temp; } else { p1 = p; p = p->pNext; } }}int main(){ SNode* head = new SNode(0); for (int i = 0; i < 15; i++) { SNode* p = new SNode(rand() % 6); p->pNext = head->pNext; head->pNext = p; } cout << "Before:\t"; Print(head); DeleteDuplicateNode(head); cout << "After:\t"; Print(head); Delete(head); system("pause"); return 0;}
0 0
- [C++]链表中删除连续重复出现的结点
- 删除排序链表中重复的结点(C++)
- 删除链表中重复的结点
- 删除链表中重复的结点
- 删除链表中重复的结点
- 删除链表中重复的结点
- 删除链表中重复的结点
- 删除链表中重复的结点
- 删除链表中重复的结点
- 删除链表中重复的结点
- 删除链表中重复的结点
- 删除链表中重复的结点
- 删除链表中重复的结点
- 删除链表中重复的结点
- 删除链表中重复的结点
- 删除链表中重复的结点
- 删除链表中重复的结点
- 删除链表中重复的结点
- Linux kernel Hash list
- Discuz! 产品的变量分析
- Python Logistic 回归分类
- C++中自定义异常的抛出与捕获
- Vulkan Tutorial(2)
- [C++]链表中删除连续重复出现的结点
- [BZOJ2083][Poi2010]Intelligence test(sort+二分)
- 洛谷 P2662 牛场围栏
- Android 自定义星星可滑动评分控件
- Java设计模式——单例模式
- Linux设备驱动中的异步通知和异步IO
- 俩个数比较大小
- 【11.10】P76 T2
- Python Counter()计数工具