数据结构实验之链表六:有序链表的建立
2016-05-16 22:10
232 查看
数据结构实验之链表六:有序链表的建立
Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^
题目描述
输入N个无序的整数,建立一个有序链表,链表中的结点按照数值非降序排列,输出该有序链表。输入
第一行输入整数个数N;第二行输入N个无序的整数。
输出
依次输出有序链表的结点值。示例输入
6 33 6 22 9 44 5
示例输出
5 6 9 22 33 44#include<stdio.h> #include<malloc.h> struct node { int number; struct node* next; }; struct node* Corder(int num) { struct node* head,*p,*q,*k; head=(struct node*)malloc(sizeof(struct node)); head->next=NULL; for(int i=0;i<num;i++) { k=(struct node*)malloc(sizeof(struct node)); scanf("%d",&k->number); k->next=NULL; p=head; while(p) { q=p->next; if(q==NULL||k->number<=q->number) { p->next=k; k->next=q; break; } else { p=p->next; } } } return head; }; void shuchu(struct node*head) { struct node *p; p=head->next; while(p) { if(p==head->next) printf("%d",p->number); else printf(" %d",p->number); p=p->next; } printf("\n"); } int main() { int num; struct node *head; scanf("%d",&num); head=Corder(num); shuchu(head); }
相关文章推荐
- 数据结构之线性表的概念
- 数据结构实验之链表五:单链表的拆分
- 数据结构课程笔记_拓扑排序
- 关于数据结构的内存分配问题
- 使用JavaScript的数组实现数据结构中的队列与堆栈
- 共同学习Java源代码--数据结构--ArrayList类(四)
- SDUT3333数据结构实验之栈六:下一较大值(二)
- 数据结构实验之链表四:有序链表的归并
- 数据结构---链表操作(线性结构)
- 数据结构--链表的操作(顺序结构)
- 数据结构--栈的顺序存储
- 数据结构--归并排序
- 数据结构(绪论)
- 数据结构学习---线性表
- 数据结构上机实验五——01背包问题
- 共同学习Java源代码--数据结构--ArrayList类(三)
- Redis中的数据结构-String与List
- C/C++ 数据结构---线性顺序存储数据:查询快,增删慢
- (考研)数据结构及算法
- 【数据结构】图形的多种表示方法及其java实现之相邻矩阵法