首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

9度OJ 题目1181:遍历链表

2013-02-24 
九度OJ 题目1181:遍历链表题目1181:遍历链表时间限制:1 秒内存限制:32 兆特殊判题:否提交:1071解决:437题

九度OJ 题目1181:遍历链表

题目1181:遍历链表

时间限制:1 秒

内存限制:32 兆

特殊判题:否

提交:1071

解决:437

题目描述:

建立一个升序链表并遍历输出。

输入:

输入的每个案例中第一行包括1个整数:n(1<=n<=1000),接下来的一行包括n个整数。

输出:

可能有多组测试数据,对于每组数据,
将n个整数建立升序链表,之后遍历链表并输出。

样例输入:
43 5 7 9
样例输出:
3 5 7 9
来源:
2000年华中科技大学计算机研究生机试真题
/**********************************   日期:2013-2-20*   作者:SJF0115*   题号: 九度OJ 题目1181:遍历链表*   来源:http://ac.jobdu.com/problem.php?pid=1181*   结果:AC*   来源:2000年华中科技大学计算机研究生机试真题*   总结:**********************************/#include<stdio.h>#include<malloc.h>typedef struct Node{int data;struct Node *next;}LinkList;int main(){int i,n,a;while(scanf("%d",&n) != EOF){LinkList *head,*pre,*p,*newNode;head = (LinkList*)malloc(sizeof(LinkList));head->next = NULL;//输入数据for(i = 0;i < n;i++){//创建节点newNode = (LinkList*)malloc(sizeof(LinkList));scanf("%d",&newNode->data);//升序排列pre = head;p = head->next;//找到插入位置while(p){if(newNode->data < p->data){break;}pre = p;p = p->next;}//插入新节点newNode->next = p;pre->next = newNode;}//输出p = head->next;printf("%d",p->data);while(p->next){p = p->next;printf(" %d",p->data);}printf("\n");}return 0;}


热点排行