社区
新手乐园
帖子详情
单链表(带头结点)如何进行冒泡排序?
flyarry
2005-04-20 04:52:20
题目如题了.
主要是控制条件如何设置?
想了好久没想出来...
...全文
235
5
打赏
收藏
单链表(带头结点)如何进行冒泡排序?
题目如题了. 主要是控制条件如何设置? 想了好久没想出来...
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
llmsn
2005-04-21
打赏
举报
回复
也是插入的操作啊.
pl_010100100001
2005-04-21
打赏
举报
回复
不知道这个函数是不是楼主要的,如下:
函数构建思想:排序前,先在链表的首结点之前插入一个辅助结点,
待排序结束后,再释放该结点.
struct node *lb_sort(srtuct node *h)
{
struct node * endpt, * u, * v, * p;
u = (struct node *)malloc(sizeof(struct node));
u->link = h;
h = u;
for(endpt = NULL; endpt != h; endpt = p)
for(p = u = h; u->link->link != endpt; u = u->link)
if(u->link->data > u->link->link->data){ /* 两相邻结点比较 */
v = u->link->link;
u->link->link = v->link;
v->link = u->link;
u->link = v;
p = u->link->link;
}
u = h;
h = h->link;
free(u);
return h;
}
代码来自 <<程序员技术与水平>> 参考书
fire314159
2005-04-21
打赏
举报
回复
把两个元素的替换改成两个节点的指针的变换。把数组下标越界的判断(数组个数)改成对是否NULL的判断。有没有头节点都一样。头节点只是为了统一对所有有效节点作法。对问题没有影响
flyarry
2005-04-21
打赏
举报
回复
谢谢pl_010100100001(男儿当自强)!
按你给出的算法,链表是没有头结点的吧.
还有这两句怎么理解呢?
for(endpt = NULL; endpt != h; endpt = p)
for(p = u = h; u->link->link != endpt; u = u->link)
bianliuwei
2005-04-20
打赏
举报
回复
和对数组进行冒泡排序没有区别的呀,只不过比较的值从数组的元素变成了链表结点的某个成员.
数据结构第5次作业.docx
2.算法设计:将教案给出的非递归直接插入排序和
冒泡排序
算法用递归算法实现。 3.算法设计:
带
附加
头结点
单链表
将各数据结点按关键字升序连接。 4.编程题:键盘输入n个无符号整数,用链式基数排序实现由小到大排序,...
数据结构实验
2.如何将一个
带
头结点
的
单链表
La分解成两个同样结构的
单链表
Lb,Lc,使得Lb中只含La表中奇数结点,Lc中含有La表的偶数结点? 实验3:循环队列基本操作 一 、实验目的 1.熟悉并能实现循环队列的定义和基本操作。 2...
游戏研发流程
该课程主要是给读者介绍游戏研发周期结点,时间安排和人员安排,项目中使用的管理工具以及研发团队如何使用项目管理工具。如何提升研发效率等等
数据结构的8个实验报告
数据结构实验报告(总共8个) 求两顺序表的交集 将十进制数转换为二进制数
单链表
的插入和倒置 二叉树左右子树交叉互换 层次遍历二叉树 删除
带
头结点
的相同的结点 对顺序表
进行
快速排序
冒泡排序
经典数据结构算法c语言实现代码(大全)
冒泡排序
.txt 冒泡法改进.txt 动态计算网络最长最短路线.txt 十五人排序.txt 单循环链表.txt 单词倒转.txt
单链表
.txt
单链表
1.txt
单链表
2.txt
单链表
倒序.txt
单链表
的处理全集.txt 双链表正排序.txt ...
新手乐园
33,311
社区成员
41,784
社区内容
发帖
与我相关
我的任务
新手乐园
C/C++ 新手乐园
复制链接
扫一扫
分享
社区描述
C/C++ 新手乐园
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章