【问题标题】:Assorting linked list in c [duplicate]在c中分类链表[重复]
【发布时间】:2013-07-11 21:08:08
【问题描述】:

我有这个结构的列表,我想根据值对列表进行排序 的draw_number,并且列表有一个指向第一个结构的指针front 列表和指向列表最后一个结构的指针后部。我发现了许多用于对列表进行排序的代码,但我无法为我的代码完成我的工作。结构是:

typedef struct itm{
    int draw_number;
    char date[11];
    char temi[6];
    struct itm *next;
}item;

【问题讨论】:

    标签: c list sorting linked-list


    【解决方案1】:

    最简单的将是冒泡排序。

    item* sort(item *start){
        item *node1,*node2;
        int temp;
        for(node1 = start; node1!=NULL;node1=node1->next){
            for(node2 = start; node2!=NULL;node2=node2->next){
                if(node2->draw_number > node1->draw_number){
                    temp = node1->draw_number;
                    node1->draw_number = node2->draw_number;
                    node2->draw_number = temp;
                }
            }
        }
    return start;
    }
    

    【讨论】:

    • 谢谢!!!冒泡排序更容易!了解
    猜你喜欢
    • 2012-10-26
    • 2012-09-27
    • 1970-01-01
    • 2015-03-17
    • 1970-01-01
    • 2012-03-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多