C语言实现链表建立排序及输出

单链表结构如下图所示:

用冒泡法对链表进行排序时,采用交换值法,设置一个链表指针p,用来指向头结点后一个(head->next)(每次内层循环结束,则往后移动),p ->next用来继承当前p节点后一个,在内层循环中不断往后移动,期间满足交换条件则交换,直至排序完毕。

时间复杂度为(n-1)+(n-2)+…+1=(n-1)n/2

你可能感兴趣的:(c语言)