链接:https://www.nowcoder.com/questionTerminal/7d348aa8b7d24e01a4f10bd023e2fb54
来源:牛客网
建立一个升序链表并遍历输出。
输入描述:
输入的每个案例中第一行包括1个整数:n(1<=n<=1000),接下来的一行包括n个整数。
输出描述:
可能有多组测试数据,对于每组数据, 将n个整数建立升序链表,之后遍历链表并输出。
示例1
输入
4 3 5 7 9
输出
3 5 7 9
#include<iostream>
#include<algorithm>
#define MAXSIZE 1001
using namespace std;
typedef struct Node{
int data;
struct Node *next;
}Linklist;
int main(){
int n,i,buf[MAXSIZE];
while(cin>>n){
Node *L=(Node *)malloc(sizeof(Node));
L->next=NULL;
for(i=0;i<n;i++) cin>>buf[i];
sort(buf,buf+n);
for(i=n-1;i>=0;i--){
Node *node=(Node *)malloc(sizeof(Node));
node->data=buf[i];
node->next=L->next;
L->next=node;
}
Node *p;
p=L;
while(p->next!=NULL){
cout<<p->next->data<<" ";
p=p->next;
}
}
return 0;
}