单链表,实现逆转
来源:互联网 发布:john frusciante 知乎 编辑:程序博客网 时间:2024/05/18 00:55
#include <iostream>
using namespace std;
#include <cassert>
struct node
{
int data;
node * next;
public:
node(int d, node* n)
{
data = d;
next = n;
}
};
class list
{
public:
list( );
virtual ~list( );
public:
void insert(int data);
void reverse();
void print();
private:
node * head;
};
list::list(): head(0)
{
}
list::~list( )
{
head = 0;
}
void list::insert(int data)
{
node * pNewNode = new node(data, head);
head = pNewNode;
}
void list::print()
{
node * pNode = head;
while (pNode)
{
cout << pNode->data << " ";
pNode = pNode->next;
}
}
void list::reverse()
{
if ( !head )
return;
node * p1 = head;
node * p2 = head->next;
while (p2)
{
node * temp = p2->next;
p2->next = p1;
p1 = p2;
p2 = temp;
}
head->next = 0;
head = p1;
}
int main( )
{
list testList;
for ( int n = 0; n < 10; n ++ )
{
testList.insert(n);
}
testList.print();
cout << endl;
testList.reverse();
testList.print();
cout << endl;
return 0;
}
- 单链表,实现逆转
- 单链表的逆转实现
- 单链表实现就地逆转
- java实现单链表逆转
- 逆转单链表c#模拟实现
- C++实现单链表的逆转
- 【算法设计-单链表的逆转】单链表逆转实现
- 用栈实现单链表的逆转
- 单链表逆转
- 逆转单链表
- 单链表逆转
- 逆转单链表
- 单链表逆转
- 单链表逆转
- 单链表逆转
- 单链表逆转
- 单链表逆转
- 单链表逆转
- 循环队列
- js和java之间传值
- vb中label控件文字换行
- 程序员路在何方………
- oracle sequence
- 单链表,实现逆转
- SAP学习笔记(CO模块学习笔记3)
- 泛型概述, 创建泛型类
- 电感与磁珠的区别
- [全程建模]2008年的全程建模培训顺利完成通告
- 命令模式
- asp.net留言板管理源代码
- Win32 API 应用程序示例
- 用Java操作Office 2007