搜题
网友您好,请在下方输入框内输入要搜索的题目:
搜题
题目内容 (请给出正确答案)
提问人:网友hhz2020 发布时间:2022-01-07
已知p指向双向循环链表中的一个结点,其结点结构为data、prior、next三个域,写出算法change(p),交换p所指向的结点和它的前缀结点的顺序。
[主观题]

已知p指向双向循环链表中的一个结点,其结点结构为data、prior、next三个域,写出算法change(p),交换p所指向的结点和它的前缀结点的顺序。

简答题官方参考答案 (由简答题聘请的专业题库老师提供的解答)
查看官方参考答案
更多“已知p指向双向循环链表中的一个结点,其结点结构为data、prior、next三个域,写出算法change(p),交换p所指向的结点和它的前缀结点的顺序。”相关的问题
第1题
一线性表存储在带头结点的双向循环链表中,L为头指针。 (1)说明该算法的功能; (2)在空缺处填写相应的语句。 void Lmknown(LinkList L){ //… p=L->next; q=p->next; r=q->next; while(q!=L){ while((p!=L)&&(p->data>q->data)) p=p->prior q->prior->next=r; A q->next=p0>next; q0>prior=p; B C q=r; p=q->prior; D } }
点击查看答案
第2题
已知有一个单向循环链表, 其每个结点中含三个域:pre, data和next, 其中data为数据域, next为指向后继结点的指针域, pre也为指针域,但它的值为空,试编写算法将此单向循环链表改为双向循环链表, 即使pre成为指向前驱结点的指针域。

点击查看答案
第3题
在一个非空的双链表中,若p所指的结点有前驱和后继,则执行p->next->prior=p=p->prior->next。
点击查看答案
第4题
已知一个带有表头结点的双向循环链表L,结点结构为prev,data,next。其中,prev和next分别指向其直接前驱和直接后继结点的指针。现要删除指针p所指的结点,正确的语句序列是( ) 。

A、p->next->prev=p->prev;p->prev->next=p->next;free(p);

B、p->next->prev=p->next;p->prev->next=p->next;free(p);

C、p->next->prev=p->next;p->prev->next=p->prev;free(p);

D、p->next->prev=p->prev;p->prev->next=p->prev;free(p);

点击查看答案
第5题
非空单链表结点结构为【data,next】,指针p所指结点是尾结点的条件是 。
点击查看答案
第6题
设一个带头结点的单向链表的头指针为head,设计算法,将链表的记录,按照data域的值递增排序。
点击查看答案
第7题
设存在一个带头结点的单循环链表L,每个结点包含三个域,它们分别是prior、data和next。其中data为数据域,prior是指针域,其值为空指针;next是指针域,指向直接后继结点。下面的代码将此单链表转化为双向循环链表。 #define OK 1 #define ERROR 0 typedef int ElemType; typedef int Status; typedef struct LNode{ struct LNode* prior; ElemType data; struct LNode* next; }DuLNode,*DuLinkList; Status CreateDuList_prior(DuLinkList &L){ // Make the prior point to the precursor node. DuLinkList p,q; 1 ; do{ q = p->next; 2 ; p = q; }while(p!=L); return OK; } 请填写空格1和2处的代码,实现上述功能。
点击查看答案
第8题
双向链表中有2个指针域pre和next,分别指向直接前驱和直接后继,假设有指针p指向链表中的一个结点,指针q指向一个待插入的结点,现在要求在p的前面插入q所指结点,则正确的插入语句为( )

A、p->pre=q;q->next=p;p->pre->next=q;q->pre=p->pre;

B、q->pre=p->pre;p->pre->next=q;q->next=p;p->pre=q->next;

C、q->next=p;p->next=q;p->pre->next=q;q->next=p;

D、p->pre->next=q; q->next=p; q->pre=p->pre;p->pre=q;

点击查看答案
第9题
在长度为n(n≥1)的双链表Head中,假设在0..n个位置插入的概率是相等的,则插入一个新结点的时间复杂度为( )。

A、O(1)

B、O(n)

C、

D、

点击查看答案
第10题
某双向链表中,结点结构为【prior, data, next】。那么删除 p 指针所指结点时,需要执行语句( )。

A、p->prior->next=p->next; free(p); p->next->prior=p->prior;

B、p->next->prior=p->prior; free(p); p->prior->next=p->next;

C、p->prior->next=p->next; p->next->prior=p->prior; free(p);

D、p->prior->next=p->next; p->next->prior=p->prior;

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

1. 搜题次数扣减规则:

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

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

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

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

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

订单号:

遇到问题请联系在线客服

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

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

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

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

简答题官方微信公众号

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