zoukankan      html  css  js  c++  java
  • 单链表的交换排序法

    #include<stdio.h>
    #include<stdlib.h>
    struct link
    {
        int data;
        struct link *next;
    };
    struct link *invent(void);
    struct link *sort(struct link *head);
    void outp(struct link *head);
    int main()
    {
        struct link *head,*p;
        printf("创建一个链表。
    ");
        head=invent();
        p=head;
        outp(p);
        printf("排序后结果为:
    ");
        p=sort(head);
        outp(p);
        return 0;
    }
    struct link *invent(void)
    {
        struct link *head=NULL,*tail,*new;
        int n=0;
        while(1)
        {
            new=(struct link *)malloc(sizeof(struct link));
            printf("请输入第%d个数据,输入-1结束:",n+1);
            scanf("%d",&new->data );
            new->next =NULL;
            if(new->data==-1)
            {
                free(new);
                return  head;
            }
            else
            {
                n++;
                if(n==1)
                {
                    head=tail=new;
                }
                else
                {
                    tail->next =new;
                    tail=new;
                }
            }
        }
    }
    void outp(struct link *head)
    {
        while(head)
        {
            printf("%d
    ",head->data );
            head=head->next ;
        }
     } 
    struct link *sort(struct link *head)
    {
        struct link *p,*q;
        int temp=0;
        p=head;
        while(p!=NULL)
        {
            q=p;
            temp=0;
            while(q!=NULL )
            {
                if(p->data>q->data )
                {
                    temp=p->data ;
                    p->data=q->data;
                    q->data=temp;
                }
                q=q->next ;
            }
            p=p->next ;
        }
        return head;
     }
  • 相关阅读:
    2019 上海网络赛 J stone name (01背包)
    CodeForces
    2019 年百度之星·程序设计大赛
    CodeForces
    POJ 3728 The merchant (树形DP+LCA)
    HihoCoder
    HihoCoder 1055 刷油漆 (树上背包)
    HI3518E平台ISP调试环境搭建
    有用的调节
    【HI3520DV200】sample
  • 原文地址:https://www.cnblogs.com/TX980502/p/6693519.html
Copyright © 2011-2022 走看看