#include <stdio.h>
#include <stdlib.h>
typedef struct LNode
{
int data;
struct LNode* prior;
struct LNode* next;
}LNode;
void initLinkList(LNode* pL)
{
int n, i = 0;
LNode* pR, * pS;
pR = pL;
scanf("%d", &n);
for (i = 0; i < n; i++)
{
pS = (LNode*)malloc(sizeof(LNode));
pS->next = NULL;
scanf("%d", &pS->data);
pR->next = pS;
pS->prior = pR;
pR = pS;
}
}
void opLinkList(LNode* pL)
{
int e;
LNode* pR, * pS, * pT;
pR = pL->next;
pT = pR->next;
pS = (LNode*)malloc(sizeof(LNode));
while (pT != NULL)
{
while (pT != NULL)
{
if (pR->data > pT->data)
{
e = pR->data;
pR->data = pT->data;
pT->data = e;
}
pT = pT->next;
}
pR = pR->next;
pT = pR->next;
}
}
void dispLinkList(LNode* pL)
{
LNode* pR;
pR = pL->next;
while (pR != NULL)
{
printf("%d ", pR->data);
pR = pR->next;
}
}
int main()
{
LNode* pL;
pL = (LNode*)malloc(sizeof(LNode));
pL->prior = NULL;
pL->next = NULL;
initLinkList(pL);
opLinkList(pL);
dispLinkList(pL);
return 0;
}