社区
数据结构与算法
帖子详情
帮帮我这个初学者
wangliminde
2001-09-20 02:41:59
各位程序员,我在学习数据结构排序这一节时,:总结了一下(还没有做习题)
排序操作基本上都是以数组为对象,用链表做的很少,关于链表排序,我的知识是少得可怜,我试着用直接插入排序的方法来排一个链表,也排不出来,数据就用9,8,10,5,4,11,12,0吧能否给我一个用直接插入排序的方法完成的算法???(用c语言写的)还有,能否用快速排序法把这个链表排出来!!我搞了一天,也没有搞出来!!
谢谢各位大侠!!
...全文
99
5
打赏
收藏
帮帮我这个初学者
各位程序员,我在学习数据结构排序这一节时,:总结了一下(还没有做习题) 排序操作基本上都是以数组为对象,用链表做的很少,关于链表排序,我的知识是少得可怜,我试着用直接插入排序的方法来排一个链表,也排不出来,数据就用9,8,10,5,4,11,12,0吧能否给我一个用直接插入排序的方法完成的算法???(用c语言写的)还有,能否用快速排序法把这个链表排出来!!我搞了一天,也没有搞出来!! 谢谢各位大侠!!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lostit
2001-09-21
打赏
举报
回复
不敢称大侠,帮人到底.
typedef struct{
int key;
float inf;
}element;
typedef element list[m];
list r;
int lefth,leftt,righth,rightt;
void partition(int h,int t);
void quicksort(int h,int t);
void quicksort(h,t)
{
int h,t;
{
if(h<t)
{
partition(h,t);//划分函数
quicksort(lefth,leftt);
quicksort(righth,rightt);
}
}
}
void partition(int h,int t)
{
int pivot;
int i,j;
element extr;
i =h;
j=t;
pivot=r[(i+j)/2].key;
do{
while(r[i].key<pivot)
i++;
while(r[j].key>pivot)
j--;
if(i<=j)
{
extr=r[i];
r[i]=r[j];
r[j]=extr;
i++;
j--;
}
}while(i<=j);
lefth=h;
leftt=j;
righth=i;
rightt=t;
}
wangliminde
2001-09-21
打赏
举报
回复
给分!!!!!!!
wangliminde
2001-09-20
打赏
举报
回复
还有十分,谁要???
wangliminde
2001-09-20
打赏
举报
回复
谢谢大侠!!!!!还有一问,用快速排序如何完成这个链表的排序呢?
lostit
2001-09-20
打赏
举报
回复
闲着没事.帮你抄了一段直接插入排序的算法.
typedef struct node {
int key;
struct node *next;
}NODE;
struct node *insertsort(NODE *head)
{
NODE *p,*tail,*q,*r;
if(head!=NULL)
{
tail = head;
while(tail->next!=NULL)
{
p=tail->next;
if(p->key<head->key)/*小于则插入到头结点*/
{
tail->next=p->next;
p->next=head;
head=p;
}
else{/*依次与已派好序的结点比较*/
q = head;
r = q->next;
while(p->key>r->key)
{
q=r;
r=q->next;
}
if(p==r)
tail=p;
else{/*插到 r 前面*/
tail->next = p->next;
p->next=r;
q->next = p;/*q是r前的一节点*/
}
}
}
}
return(head);
}
(完整版)武汉版信息技术五年级第1课请你快来
帮帮我
教案.pdf
6. 基础编程教育:了解程序设计的基本概念,学会使用简单的编程语言来解决实际问题,比如使用Scratch或其他适合
初学者
的编程工具。 7. 遇到问题时的解决策略:信息技术学习过程中不可避免会遇到各种问题,比如软件...
telaen_1.2.0-beta1 国外php邮件程序,我不会用,还望会大哥们
帮帮我
!! d.dw@msn.com
如果你是
初学者
,建议从安装和配置Telaen开始,然后逐步学习上述知识点。同时,可以参考官方文档、在线教程,或者参与社区讨论(例如通过邮件或QQ群)寻求帮助。在实践中,你将逐渐掌握这个PHP邮件程序的使用,并能...
一年级数学5以内的加法.ppt
《一年级数学5以内的加法》是针对
初学者
设计的一份教学材料,旨在帮助孩子们掌握基本的算术运算,特别是加法。这份PPT通过生动的图表和互动环节,引导孩子们理解和运用5以内的加法。 加法是数学的基础概念之一,它...
SimpleFireworks
烟花人脸相机滤镜示例如果您是
初学者
,我建议您从这个项目开始。 它将快速向您展示如何使用 SimpleFireworks 块。 一旦您了解了 Block 属性,您应该尝试检查其中隐藏的内容。 烟花世界效果示例SimpleFireworks 有三...
常用英语口语1000句,初学口语,英语速成
根据给定文件的信息,我们可以总结出一系列与日常生活相关的英语口语表达。这些句子涵盖了问候、告别、请求、应答以及各种日常...无论是对于
初学者
还是希望提升英语口语水平的学习者来说,都是非常实用且有价值的内容。
数据结构与算法
33,028
社区成员
35,337
社区内容
发帖
与我相关
我的任务
数据结构与算法
数据结构与算法相关内容讨论专区
复制链接
扫一扫
分享
社区描述
数据结构与算法相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章