#include <stdio.h>
#include <stdlib.h>
#include <algorithm>
#include <iostream>
using namespace std;
typedef struct node
{
int data;
struct node *next;
struct node *prior;
}List;
void createList(List *&L,int n,int a[])
{
List *r,*s;
int i;
L=(List *)malloc(sizeof(List));
r=L;
for(i=0;i<n;i++)
{
s=(List *)malloc(sizeof(List));
s->data=a[i];
r->next=s;
s->prior=r;//前方注意双向链表;
r=s;
}
r->next=NULL;
}
void disList(List *L)
{
List *p=L->next;
while(p!=NULL)
{
cout<<p->data<<" ";
p=p->next;
}
}
int main()
{
List *L;
int num;
cin>>num;
int a[1005];
int i;
for(i=0;i<num;i++)
cin>>a[i];
sort(a,a+num);
createList(L,num,a);
disList(L);
return 0;
}
【数据结构 _双向链表_List_0960】双向链表的操作问题
最新推荐文章于 2022-03-29 13:10:10 发布