📄 chainbubblesort.cpp
字号:
#include <iostream.h>
struct Chain
{
int data;
Chain* next;
};
void ChainBubbleSort(Chain*& head)
{
Chain *endpt,*u,*v,*p;
u=new Chain;
u->next=head;
head=u;
for (endpt=NULL;endpt!=head;endpt=p)
for (p=u=head;u->next->next!=endpt;u=u->next)
if (u->next->data>u->next->next->data)
{
v=u->next->next;
u->next->next=v->next;
v->next=u->next;
u->next=v;
p=u->next->next;
}
u=head;
head=head->next;
delete u;
}
void Create(Chain*& head)
{
Chain* ps;
Chain* pend;
ps=new Chain;
cin>>ps->data;
pend=ps;
while (ps->data!=0)
{
if (!head)
head=ps;
else
pend->next=ps;
pend=ps;
ps=new Chain;
cin>>ps->data;
}
pend->next=NULL;
delete ps;
}
void Show(Chain* head)
{
while (head)
{
cout<<head->data<<endl;
head=head->next;
}
}
void main()
{
Chain* head;
head=NULL;
Create(head);
Show(head);
ChainBubbleSort(head);
Show(head);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -