单链表排序(冒泡)

从头一次比较 比较到end前一个后 end向前进一次;

struct Node

{
    int data;
    Node *next;

};//定义Node

    Node *f = first;
    Node *end1=NULL;  //设置指针指向表首尾
    while(first->next!=end1)
    {
        while(f->next!=end1)
        {
            if(f->data < f->next->data)
            {
                int tmp = f->data;
                f->data=f->next->data;
                f->next->data = tmp;
            }
            f = f->next;
        }
        end1 = f; 
        f = first; //重置指针
    }

猜你喜欢

转载自blog.csdn.net/ConnyBunny_jz/article/details/79938675