数据结构实验之链表六:有序链表的建立

来源:互联网 发布:java jsonarray清空 编辑:程序博客网 时间:2024/06/16 12:48

数据结构实验之链表六:有序链表的建立

Time Limit: 1000MS Memory Limit: 65536KB
Submit Statistic

Problem Description

输入N个无序的整数,建立一个有序链表,链表中的结点按照数值非降序排列,输出该有序链表。

Input

第一行输入整数个数N;
第二行输入N个无序的整数。

Output

依次输出有序链表的结点值。

Example Input

633 6 22 9 44 5

Example Output

5 6 9 22 33 44
#include <bits/stdc++.h>using namespace std;struct node{    int data;    node *next;};struct node *creat(int n){    node *head, *tail, *p;    head = new node;    head->next = NULL;    tail = head;    for(int i = 0; i < n; i++)    {        p = new node;        cin >> p->data;        p->next = NULL;        tail->next = p;        tail = p;    }    return (head);}void Sort(node *head){    node *p, *q;    for(p = head->next; p; p=p->next)    {        for(q = p->next; q; q=q->next)        {            if(p->data > q->data)            {                int t = p->data;                p->data = q->data;                q->data = t;            }        }    }}void display(node *head){    node *p;    for(p = head->next; p; p = p->next)    {        if(p->next)            cout << p->data << " ";        else            cout << p->data << endl;    }}int main(){    int n;    node *head;    cin >> n;    head = creat(n);    Sort(head);    display(head);    return 0;}


0 0
原创粉丝点击