重要提示:请勿将账号共享给其他人使用,违者账号将被封禁!
查看《购买须知》>>>
首页 > 电气工程及其自动化> 发电厂电气部分
网友您好,请在下方输入框内输入要搜索的题目:
搜题
拍照、语音搜题,请扫码下载APP
扫一扫 下载APP
题目内容 (请给出正确答案)
[主观题]

建立在单链表上的一个c语言描述算法如下,其中L为链表头结点的指针。请填充算法中下划线的空白之处

,并简述算法完成的功能。 typedef struct node(int data;struct node*next;)Lnode,‘link; void SelectSort(1ink L) {link P,q,minp; int temp;p=L一>next; while((1) ) ((2)) ; q=p一>next; while((3) )

答案
查看答案
更多“建立在单链表上的一个c语言描述算法如下,其中L为链表头结点的指针。请填充算法中下划线的空白之处”相关的问题

第1题

已知二叉树的链表存储结构定义如下: TYPE bitreptr=^bitrenode; bitrenode:record data:char;
1chi ld, rchi 1d:bitrept.r END; 编写一个递归算法,利用叶结点中空的右链指针域rchild,将所有叶结点自左至右链接成一个单链表,算法返回最左叶结点的地址(链头)。【清华大学1997三(10分)】

点击查看答案

第2题

设待排序的文件用单链表作存储结构,其形式如下: TYPE pointer=↑node; node=RECORD
key:integer: next:pointer; END; 写出以head为头指针的选择排序算法。【中山大学1999二(10分)】

点击查看答案

第3题

设有一个循环单链表head,编写算法,实现结点指针域指向其直接前趋的操作。

点击查看答案

第4题

以下是用类C语言写出的算法,该算法将以二叉链表存储的二叉树中的叶结点按从左到右的顺序链成一个
带头结点的双向循环链表,链接时,结点的Lchild域作为前链域,指向结点的直接前驱,结点的Rehild域作为后链域,指向结点的直接后继。算法,使用一个顺序栈stack,栈顶指针为top,p、t为辅助指针,head为双向循环链表的头指针。试填充算法中的空格,使算法完整。 void leafchain(){ p=(BiTree)malloc(sizeof(BiTNode)); if(!p){ printf(“OVERFLOW\n”); exit(1); } head=p; top=0; if(bt){ top++: stack[top]=bt; while(top){ t=stack[top]; top——; if(!t->Lchild&&!t->Rchild){ (1) (2) (3) } else{ if((4) ){ top++; stack[top]= (5) } if((6) ){ top++: stack[top]= (5) } } } (8) (9) } }

点击查看答案

第5题

现有一无表头结点的单链表L,p、q、r为Lnode类型的指针。 请阅读下列算法并给出算法的功能描述:
aa(Lnode *L) {p=L;q=NULL; while(P!=NULL) {r=p一>next;p一>next=q;q=p;p=r;) L=q; }【北京理工大学2006六、7(50/7分)】

点击查看答案

第6题

按照下列题目中的算法功能说明,将算法描述片段中的错误改正过来。 (1)下面的算法描述片段用

按照下列题目中的算法功能说明,将算法描述片段中的错误改正过来。 (1)下面的算法描述片段用于在双链表中删除指针变量p所指的结点: p->next=p->prior->next; p->prior=p->next->prior; free(p); (2)下面的算法描述片段用于在双链表中指针变量p所指结点后插入一个新结点: new(q); q->prior=p; p->next=q; q->next=p->next; q=p->next->prior;

点击查看答案

第7题

若字典中各结点的检索概率不等,在采用顺序表或者单链表存储字典时可用如下策略提高检索的效率:若
找到指定的结点,则将该结点和其前驱(若存在)结点交换,使得经常被检索的结点尽量位于表的前端。对于字典的顺序存储结构和链式存储结构,分别写出实现上述策略的顺序检索算法(检索时必须从表头开始向后扫描)。

点击查看答案

第8题

试为二叉树写出一个建立三叉链表的算法,并在此三叉链表中删去每一个元素值为x的结点,以及以它为
根的子树,且释放相应存储空间。二叉树的三叉链表的描述为: TYPE bitreptr=^nodetp; nodetp=record data:char; lchild, rchild,parent:bitreptr END; VAR bt:bitreptr;{二叉树根结点的指针}【同济大学1998四(14分)】

点击查看答案

第9题

双端队列(duque)是一个可以在任一端进行插入和删除的线性表。现采用一个一维数组作为双端队列的数

双端队列(duque)是一个可以在任一端进行插入和删除的线性表。现采用一个一维数组作为双端队列的数据存储结构,使用c语言描述如下: deftne maxsize 32{数组中可容纳的元素个数} typedef struct { datatype elem[maxsize]; int endl,end2; }duque; 试编写两个算法add(duque QU,datatype x,int tag)和delete(duque QU,datatype&x,int tag)用以在此双端队列的任一端进行插入和删除。当tag=0时在左端endl端操作,当tag=1时在右端end2端操作。

点击查看答案

第10题

在一个长度为n(n>1)的单链表上,设有头和尾两个指针,执行___操作与链表的长度有关。

A.在单链表第一个元素前插入一个新元素

B.在单链表最后一个元素后插入一个新元素

C.删除单链表中的第一个元素

D.删除单链表中的最后一个元素

点击查看答案

第11题

将长度为n的单链表链接在长度为m的单链表之后的算法的时间复杂度为

A.O(1)

B.O(n)

C.O(m)

D.O(m+n)

点击查看答案
下载APP
关注公众号
TOP
重置密码
账号:
旧密码:
新密码:
确认密码:
确认修改
购买搜题卡查看答案 购买前请仔细阅读《购买须知》
请选择支付方式
  • 微信支付
  • 支付宝支付
点击支付即表示同意并接受了《服务协议》《购买须知》
立即支付 系统将自动为您注册账号
已付款,但不能查看答案,请点这里登录即可>>>
请使用微信扫码支付(元)

订单号:

遇到问题请联系在线客服

请不要关闭本页面,支付完成后请点击【支付完成】按钮
遇到问题请联系在线客服
恭喜您,购买搜题卡成功 系统为您生成的账号密码如下:
重要提示:请勿将账号共享给其他人使用,违者账号将被封禁。
发送账号到微信 保存账号查看答案
怕账号密码记不住?建议关注微信公众号绑定微信,开通微信扫码登录功能
请用微信扫码测试
优题宝