新微赢技术网
标题:
链表问题
[打印本页]
作者:
街头霸王爷
时间:
2009-11-6 01:49
标题:
链表问题
要将建立原链表的一个倒序链表,写了下面这个,但运行不了,请各位帮忙看一下~~~~~~~有可能的话提示一下如何遍历一次就能完成~~~谢谢
#include<iostream>
using namespace std;
struct node
{
int data;
node*next;
};
void main()
{
node*headee=NULL;
node*p;
for(int i=1;i<=5;i++)
{
node*s=new node;
s->data=i;
if(headee==NULL)headee=s;
else p->next=s;
p=s;
}
p->next=NULL;
node*m=headee;
while(m!=NULL)
{
cout<<m->data<<endl;
m=m->next;
}
node*head=NULL;
node*q;
node*kao;
for(int k=1;k<=5;k++)
{
kao=headee;
while(1)
{
if(kao->next->next==NULL)
{
node*pp=new node;
pp->data=kao->next->data;
node*t=kao->next;
kao->next=NULL;
delete t;
if(head==NULL)head=pp;
else q->next=pp;
q=pp;
cout<<head->data<<endl;
}
else kao=kao->next;
}
}
q->next=NULL;
cout<<head->data<<endl;
while(head)
{
cout<<head->data<<endl;
head=head->next;
}
}
作者:
爱你爱到西元
时间:
2009-11-6 01:49
#include<iostream.h>
//using namespace std;这一行不要
struct node
{
int data;
node * next;
};
void main()
{
node*head=new node;
head->next=NULL;
node*pp;
for(int i=1;i<=6;i++)
{
node*s=new node;
s->data=i;
if(head->next==NULL)head->next=s;
else pp->next=s;
pp=s;
}
pp->next=NULL;
node*m=head->next;
cout<<"The string of number you have entered is:"<<endl;
while(m!=NULL)
{
cout<<m->data<<endl;
m=m->next;
}
node*p=head->next;
node*q=p->next;
p->next=NULL;
node*r=q->next;
while(1)
{q->next=p;
p=q;
q=r;
if(r->next==NULL)
break;
r=r->next;
}
q->next=p;
head->next=q;
cout<<"NOW,THE RESULT"<<endl;
p=head->next;
while(p)
{
cout<<p->data<<endl;
p=p->next;
}
}
作者:
寂寞男孩
时间:
2009-11-6 01:49
把上面的修改了下,可以实现链表的倒序遍历,但我感觉不是很好,不知道是不是你想要的
#include<iostream.h>
//#include"print.h"
struct node
{
int data;
node *next;
};
void LinkList()
{
node *headee=NULL;
node *p;
for(int i=1;i<=5;i++)
{
node *s=new node;
s->data=i;
if(headee==NULL)
headee=s;
else
p->next=s;
p=s;
}
p->next=NULL;
node *m=headee;
while(m!=NULL)
{
cout<<m->data<<endl;
m=m->next;
}
}
void LinkList1()
{
node *headee=NULL;
node*p;
for(int i=1;i<=5;i++)
{
node *s=new node;
s->data=i;
if(headee==NULL)
headee=s;
else
p->next=s;
p=s;
}
node *real=new node;
real=p;
p->next=NULL;
real->next=p;
(real->next)->next=headee;
cout<<real->data<<endl;
for(i=0;i<4;i++)
{ for(int j=0;j<4;j++)
{real=real->next;}
cout<<real->data<<endl;
}
}
void main()
{
LinkList();
LinkList1();
}
欢迎光临 新微赢技术网 (http://bbs.weiying.cn/)
Powered by Discuz! X3.2