搜题
网友您好,请在下方输入框内输入要搜索的题目:
搜题
题目内容 (请给出正确答案)
提问人:网友dzyduan 发布时间:2022-01-06
[主观题]

有一个无头结点的单链表,结点有数据域data,指针域next,表头指针为h,通过遍历链表,将链表中所有的

链接方向逆转。要求逆转后的链表的表头指针h指向原链表的最后一个结点。算法如下所示,请在空格处填入正确的语句。 void Inverse(&h){ if(1) ) return; p=h一>next;pr=NULL; while(2) ) (h一>next=pr;pr=h;h=p; (3);} h一>next=pr; }//inverse【南京理工大学2005二、1(3分)】

简答题官方参考答案 (由简答题聘请的专业题库老师提供的解答)
查看官方参考答案
更多“有一个无头结点的单链表,结点有数据域data,指针域next,表头指针为h,通过遍历链表,将链表中所有的”相关的问题
第1题
有一个单链表(不同结点的数据域值可能相同),其头指针为head,编写一个函数计算数据域为x的结点个

有一个单链表(不同结点的数据域值可能相同),其头指针为head,编写一个函数计算数据域为x的结点个数。

点击查看答案
第2题
对于单链表存储结构,以下说法错误的是()

A.一个结点的数据域用于存放线性表的一个数据元素

B.一个结点的指针域用于指向下一个数据元素的结点

C.单链表必须带有头结点

D.单链表中的所有结点可以连续存放,也可以不连续存放

点击查看答案
第3题
设计一个算法,产生一个有4个结点的单链表,这些结点的数据域分别是a,b,c,d,且表头指针是head。
点击查看答案
第4题
已知L为没有头结点的单链表中第一个结点的指针,每个结点数据域存放一个字符,该字符可能是英文字
母字符或数字字符或其它字符,编写算法构造三个以带头结点的单循环链表表示的线性表,使每个表中只含同一类字符。(要求用最少的时间和最少的空间)。

点击查看答案
第5题
已知一个带头结点的单链表头指针为head,数据域的值为整数,数据类型定义如下: typedef struct nod
e{ int data; struct node *next; }Lnode, *LinkList; (1)设计一个函数float avgList(LinkList head),统计head为头指针的单链表中元素的平均值并返回。 (2)void deleX(LinkList head, int x),在head为头指针的单链表中删除所有值为x的元素结点。 (3)(选做)设计一个函数void splitList(LinkList head, LinkList odd, LinkList even),将head为头指针的单链表拆分成奇数链表和偶数链表(没有新结点生成),odd和even分别为带头结点的奇数链表和偶数链表的头指针,初始为空。

点击查看答案
第6题
算法设计题:已知一个带头结点的单链表头指针为first,数据域的值为整数,数据类型定义如下: typedef struct node{ int data; struct node *next; }Node; 设计一个函数int countList(Node *first),统计first为头指针的单链表中值为正整数的元素的个数并返回。
点击查看答案
第7题
单向链表中往往含有一个头结点,该结点不存储数据元素,一般令链表的头指针指向该结点,而该结点指针域的值为第一个元素结点的指针。以下关于单链表头结点的叙述中,错误的是()。

A.若在头结点中存入链表长度值,则求链表长度运算的时间复杂度为O(1)

B.在链表的任何一个元素前后进行插入和删除操作可用一致的方式进行处理

C.加入头结点后,代表链表的头指针不因为链表为空而改变

D.加入头结点后,在链表中进行查找运算的时问复杂度为O(1)

点击查看答案
第8题
● 单向链表中往往含有一个头结点,该结点不存储数据元素,一般令链表的头指针指向该结点,而该结点指针域的值为第一个元素结点的指针。以下关于单链表头结点的叙述中,错误的是 (60) 。(60)

A.若在头结点中存入链表长度值,则求链表长度运算的时间复杂度为O(1)

B. 在链表的任何一个元素前后进行插入和删除操作可用一致的方式进行处理

C. 加入头结点后,代表链表的头指针不因为链表为空而改变

D. 加入头结点后,在链表中进行查找运算的时间复杂度为O(1)

点击查看答案
第9题
选择排序法每一趟排序的基本原理是从当前未排好序的那些元素中选一个值最小的元素,将其与未排好
的那些元素的第一个元素交换位置。根据这个原理,请写出对一个带有头结点的单链表按数据域从小到大进行选择排序的算法。约定:链结点构造为(data,link),每一个链结点的数据域中存一个整型数,但是头结点数据域中不存放任何信息;设头结点指针为list。限制:排序过程中不得不申请任何链结点空间,也不得改变任何链结点的数据域内容。【北京航空航天大学2006三(10分)】

点击查看答案
第10题
在一个非递减有序的线性表中,插入一个值为x的元素,使插入后的线性表仍为非递减有序表,用带头结点的单链表编
写算法。

算法实现的思路为:在有序单链表中插入一个数据元素x,首先要找到该元素应该插入到什么位置,才能保证插入后的单链表仍为有序表。因此,算法的第一步是寻找x的位置:设置指针p、q,最初p指向头结点,q指向头结点的下一个结点,比较q所指数据域的值与x的大小,如果小于x,则p、q分别向后移动一个位置,使p始终作为q的前驱结点,然后重复上面的比较过程;如果比较结果大于x或是比较到最后单链表结束了,则找到了插入位置,在p与q之间插入结点x即可。算法的具体实现如下:

点击查看答案
重要提示: 请勿将账号共享给其他人使用,违者账号将被封禁!
查看《购买须知》>>>
重置密码
账号:
旧密码:
新密码:
确认密码:
确认修改
购买搜题卡查看答案
购买前请仔细阅读《购买须知》
请选择支付方式
微信支付
支付宝支付
点击支付即表示你同意并接受《服务协议》《购买须知》
立即支付
搜题卡使用说明

1. 搜题次数扣减规则:

功能 扣减规则
基础费
(查看答案)
加收费
(AI功能)
文字搜题、查看答案 1/每题 0/每次
语音搜题、查看答案 1/每题 2/每次
单题拍照识别、查看答案 1/每题 2/每次
整页拍照识别、查看答案 1/每题 5/每次

备注:网站、APP、小程序均支持文字搜题、查看答案;语音搜题、单题拍照识别、整页拍照识别仅APP、小程序支持。

2. 使用语音搜索、拍照搜索等AI功能需安装APP(或打开微信小程序)。

3. 搜题卡过期将作废,不支持退款,请在有效期内使用完毕。

请使用微信扫码支付(元)

订单号:

遇到问题请联系在线客服

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

为了保护您的账号安全,请在“简答题”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!

- 微信扫码关注简答题 -
警告:系统检测到您的账号存在安全风险
抱歉,您的账号因涉嫌违反简答题购买须知被冻结。您可在“简答题”微信公众号中的“官网服务”-“账号解封申请”申请解封,或联系客服
- 微信扫码关注简答题 -
请用微信扫码测试
欢迎分享答案

为鼓励登录用户提交答案,简答题每个月将会抽取一批参与作答的用户给予奖励,具体奖励活动请关注官方微信公众号:简答题

简答题官方微信公众号

简答题
下载APP
关注公众号
TOP