#include
using namespace std;
struct Node
{ int data;
Node *next;
};
void insert(Node *&head,int num)
{ Node *s,*p,*q;
s=new Node;
s->data=num;
s->next=NULL;
if(head==NULL)
{ head=s;
return;
}
if(head->data>s->data)
{ s->next=head;
head=s;
return;
}
for(q=head,p=head->next;p;q=p,p=p->next)
if(p->data>s->data)
{ s->next=p;
q->next=s;
return;
}
q->next=s;
return;
}
void ShowNode( Node *head)
{cout<<"now the items of list are:";
while(head)
{ cout<data<<" ";
head=head->next;}
cout< }
void ReverseList(Node *head)
{ cout Node *s,*p,*q;
if(head==NULL||head->next==NULL)
{return;}
s=head->next;
p=s->next;
s->next=NULL;
while(p)
{q=s->next;
p->next=s;
s=p;
p=q;
head->next=s;
cout<data<<" ";
head=head->next;
}cout< }
int main()
{ int k;
Node *head=NULL;
cin>>k;
while(k!=0)
{insert(head,k);
cin>>k;}
ShowNode(head);
ReverseList(head);
}
这是我的代码,有序输出可以用,但逆序输出元素就不成功。求大神,教改程序。
#include<iostream>
using namespace std;
struct Node
{ int data;
Node *next;
};
void insert(Node *&head,int num)
{ Node *s,*p,*q;
s=new Node;
s->data=num;
s->next=NULL;
if(head==NULL)
{ head=s;
return;
}
if(head->data>s->data)
{ s->next=head;
head=s;
return;
}
for(q=head,p=head->next;p;q=p,p=p->next)
if(p->data>s->data)
{ s->next=p;
q->next=s;
return;
}
q->next=s;
return;
}
void ShowNode( Node *head)
{cout<<"now the items of list are:";
while(head)
{ cout<<head->data<<" ";
head=head->next;}
cout<<endl;
}
void ReverseList1(Node *head1)
{
if (head1->next != NULL)
ReverseList1(head1->next);
cout<<head1->data<<" ";
}
void ReverseList(Node *head)
{ cout<<"now the change items of list are:";
/* Node *s,*p,*q;
if(head==NULL||head->next==NULL)
{return;}
s=head->next;
p=s->next;
s->next=NULL;
while(p)
{q=s->next;
p->next=s;
s=p;
p=q;
head->next=s;
cout<<head->data<<" ";
head=head->next;
}cout<<endl;
*/
ReverseList1(head);
}
int main()
{ int k;
Node *head=NULL;
for (k=1; k <= 5; k++)
insert(head,k);
ShowNode(head);
ReverseList(head);
}
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。