链表排序c++ 冒泡怎么用

冒泡排序链表中使用方法希望可以发代码详细点c++语言中 ..........谢谢

4个回答

 http://blog.csdn.net/bitboss/article/details/51602826

#include<stdio.h>
#include<assert.h>

typedef int DataType;

typedef struct LinkNode
{
    DataType data;
    struct LinkNode* next;
}LinkNode,*pLinkNode;//结点结构体

typedef struct LinkList
{
    LinkNode* pHead;//头结点指针
}LinkList ,*pLinkList;//链表


void BubbleSort (pLinkList pList)
{
    pLinkNode cur = NULL;
    pLinkNode teil = NULL;

    assert(pList);

    cur = pList->pHead ;

    while(cur != teil)
    {
        while(cur->next != teil)
        {
            if(cur->data > cur->next ->data )
            {
                DataType tmp = cur->data ;
                cur->data = cur->next ->data ;
                cur->next ->data = tmp;
            }
            cur = cur->next ;
        }
        teil = cur;
        cur = pList->pHead ;
    }
    return ;
}
kbhao7788
kbhao7788 看不懂
接近 4 年之前 回复

http://www.jb51.net/article/30796.htm
这是一个冒泡排序的动画 让你看的明白点
现在很多算法都有动画演示 可以找点看看 如果不明白原理的话

链表的冒泡排序跟数组最大的区别就是next指针的变动

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐