C++前插法实现链表
2014-04-03 21:57
176 查看
C++前插法实现链表:
//前插法实现链表
#include<iostream>
using namespace std;
struct node
{
int data;
node *next;
};
class linklist
{
private:
node *head;
public:
linklist();
void create();
void display();
~linklist();
};
linklist::linklist()
{
head=NULL;
}
void linklist::create()
{
node *p;
int temp=-1;
cout<<"输入链表中的数据"<<endl;
cin>>temp;
while(temp!=-1)
{
p=new node;
p->data=temp;
p->next=head;
head=p;
cin>>temp;
}
}
void linklist::display()
{
node *p=head;
while (p->next)
{
cout<<p->data<<" ";
p = p->next;
cout<<'\t';
}
cout<<p->data<<endl;
}
linklist::~linklist()
{
node *p;
while (head)
{
p = head;
head = head->next;
delete p;
p=NULL;
}
}
int main()
{
linklist list;
list.create();
list.display ();
return 0;
}
//前插法实现链表
#include<iostream>
using namespace std;
struct node
{
int data;
node *next;
};
class linklist
{
private:
node *head;
public:
linklist();
void create();
void display();
~linklist();
};
linklist::linklist()
{
head=NULL;
}
void linklist::create()
{
node *p;
int temp=-1;
cout<<"输入链表中的数据"<<endl;
cin>>temp;
while(temp!=-1)
{
p=new node;
p->data=temp;
p->next=head;
head=p;
cin>>temp;
}
}
void linklist::display()
{
node *p=head;
while (p->next)
{
cout<<p->data<<" ";
p = p->next;
cout<<'\t';
}
cout<<p->data<<endl;
}
linklist::~linklist()
{
node *p;
while (head)
{
p = head;
head = head->next;
delete p;
p=NULL;
}
}
int main()
{
linklist list;
list.create();
list.display ();
return 0;
}
相关文章推荐
- c++实现数据结构链表的插入 删除 倒置 取值(vs测试可以运行)
- 链表——用C++模板实现
- 剑指offer刷题之c++实现的合并两个有序的链表
- 数据结构实验-用C++实现带头结点的循环链表
- C++实现顺序表及双向链表
- 【C++】用类实现单向单链表的尾插PushBack(),尾删PopBack(),打印PrintSlist()。
- c++分别用数组和链表实现栈的操作
- C++实现单链表
- 【C++】c++实现线性表、链表
- 【C++】实现双向链表的所有操作,包括逆置双链表(三种方法)
- VC++编译问题汇总1 单链表的表示和实现,基于c++
- c++实现单链表,双向链表,顺序表的接口(非模板)
- 单向循环链表的C++实现
- C++学习之实现链表的增删查。
- [数据结构]链表的实现-C++
- C++实现打印两个有序链表公共部分的方法
- 查找链表中倒数第k个结点 C++实现
- C++实现链表的进本操作及测试用例
- (C++版)链表(四)——实现双向循环链表创建、插入、删除等简单操作
- 左神的书——《程序员代码面试指南》之打印两个有序链表的公共部分 c++实现