数据结构实验之链表六:有序链表的建立
2016-11-12 21:00
239 查看
数据结构实验之链表六:有序链表的建立
Time Limit: 1000MSMemory Limit: 65536KB
[align=center][/align]
Problem Description
输入N个无序的整数,建立一个有序链表,链表中的结点按照数值非降序排列,输出该有序链表。Input
第一行输入整数个数N;第二行输入N个无序的整数。
Output
依次输出有序链表的结点值。Example Input
6 33 6 22 9 44 5
Example Output
5 6 9 22 33 44
Hint
不得使用数组!Author
#include<stdio.h> #include<stdlib.h> struct node { int data; struct node *next; }; struct node *creat(struct node *head,int n) { int i; struct node *p,*q; q=head; for(i=0;i<n;i++) { p=(struct node *)malloc(sizeof(struct node)); scanf("%d",&p->data); p->next=q->next; q->next=p; q=p; } return head; } int main() { int i,j,n,m,k,t; struct node *head,*p,*q,*tail; scanf("%d",&n); head=(struct node *)malloc(sizeof(struct node)); head->next=NULL; head=creat(head,n); q=head; for(i=0;i<n-1;i++) { q=q->next; p=q->next; for(j=i+1;j<n;j++) { if(q->data>p->data) { t=q->data; q->data=p->data; p->data=t; } p=p->next; } } p=head; p=p->next; i=0; while(p!=NULL) { if(i==0) printf("%d",p->data); else printf(" %d",p->data); p=p->next; i++; } }
相关文章推荐
- 数据结构实验之链表六:有序链表的建立
- 数据结构实验之链表六:有序链表的建立
- SDUT_2121数据结构实验之链表六:有序链表的建立 (对建立的单项链表结构进行排序)
- 2121-数据结构实验之链表六:有序链表的建立
- 山东理工OJ【2121】数据结构实验之链表六:有序链表的建立(插排法)
- SDUTACM 数据结构实验之链表六:有序链表的建立
- 数据结构实验之链表六:有序链表的建立(C语言)
- SDUTOJ 2121 数据结构实验之链表六:有序链表的建立
- 数据结构实验之链表六:有序链表的建立
- 2121 数据结构实验之链表六:有序链表的建立 【纯插排】
- SDUT 2121 数据结构实验之链表六:有序链表的建立
- 数据结构实验之链表六:有序链表的建立
- 数据结构实验之链表六:有序链表的建立
- SDUT OJ 数据结构实验之链表六:有序链表的建立
- 数据结构实验之链表六:有序链表的建立
- 数据结构实验之链表六:有序链表的建立
- 数据结构实验之链表六:有序链表的建立
- 数据结构实验之链表六:有序链表的建立
- SDUT 2121 数据结构实验之链表六:有序链表的建立
- SDUT2121数据结构实验之链表六:有序链表的建立