九度oj-1181-遍历链表
2015-11-24 11:36
239 查看
时间限制:1 秒
内存限制:32 兆
特殊判题:否
提交:2736
解决:1183
题目描述:
建立一个升序链表并遍历输出。
输入:
输入的每个案例中第一行包括1个整数:n(1<=n<=1000),接下来的一行包括n个整数。
输出:
可能有多组测试数据,对于每组数据,
将n个整数建立升序链表,之后遍历链表并输出。
样例输入:
样例输出:
来源:2000年华中科技大学计算机研究生机试真题
内存限制:32 兆
特殊判题:否
提交:2736
解决:1183
题目描述:
建立一个升序链表并遍历输出。
输入:
输入的每个案例中第一行包括1个整数:n(1<=n<=1000),接下来的一行包括n个整数。
输出:
可能有多组测试数据,对于每组数据,
将n个整数建立升序链表,之后遍历链表并输出。
样例输入:
4 3 5 7 9
样例输出:
3 5 7 9
来源:2000年华中科技大学计算机研究生机试真题
#include<stdio.h> #include<stdlib.h> typedef struct Lnode { int data; struct Lnode *next; }Lnode,*Link; int main() { int n,i; while(scanf("%d",&n)!=EOF) { Link la,pa,p; la=(Link)malloc(sizeof(Lnode)); la->next=NULL; for(i=0;i<n;i++) { p=(Link)malloc(sizeof(Lnode)); scanf("%d",& p->data); pa=la; while(pa->next && pa->next->data < p->data) pa=pa->next; p->next = pa->next; pa->next = p; } pa=la->next; free(la); while(pa->next) { printf("%d ",pa->data); p=pa; pa=pa->next; free(p); } printf("%d\n",pa->data); free(pa); } return 0; }
相关文章推荐
- [C/C++]反转链表
- C#实现基于链表的内存记事本实例
- C语言实现带头结点的链表的创建、查找、插入、删除操作
- C++实现简单的学生管理系统
- Linux内核链表实现过程
- C++链表倒序实现方法
- C#通过链表实现队列的方法
- C#实现的简单链表类实例
- 找出链表倒数第n个节点元素的二个方法
- Java数据结构之简单链表的定义与实现方法示例
- C语言单循环链表的表示与实现实例详解
- C++实现的链表类实例
- PHP小教程之实现链表
- C语言双向链表的表示与实现实例详解
- js链表操作(实例讲解)
- C语言实现输出链表中倒数第k个节点
- C++语言实现线性表之链表实例
- STL list链表的用法详细解析
- C语言创建链表错误之通过指针参数申请动态内存实例分析
- php链表用法实例分析