当前位置:启航官网 > 考研报考 > 试题

(8分)已知一个单链表的头节点指针为 head。设计算法将链表中最后k 个节点移

2025-07-10 10:56:06

889

(8分)已知一个单链表的头节点指针为 head。设计算法将链表中最后k 个节点移动到链表头节点之后,且这k个节点按与原来相反的顺序存放,从而形成一个新链表(例

如,设原链表节点顺序为a₁,a₂,…,an, 则新链表顺序为 an,an-1,.,an-k+1,a1,

a₂,.,an-k), 该链表的头指针仍为head。要求新链表中节点复用原来链表的节点。

(1)根据注释,将以下代码补充完整,完成算法实现。(6分)

typedef struct LNode{ int data; struct LNode *next;

}LNode,*LinkList;

void impl(LinkList head,int k){

int count=0;

LinkList p,toReverseHead ;

p =head->next;

toReverseHead=head;

a)___________ (3分 )

}

p=toReverseHead->next;

toReverseHead->next=NULL;// 设置最后一个节点next 为空

toReverseHead=p;//toReverseHead 指向最后k个节点中的第一个节点

while(toReverseHead){// 逐一移动 最后k个节点

b)___________ (3 分)

}

}

(2)分析算法的时间复杂度和空间复杂度。(2分)

查看答案和解析

【26考研辅导课程推荐】:26考研集训课程,VIP领学计划,26考研VIP全科定制套餐(公共课VIP+专业课1对1) , 这些课程中都会配有内部讲义以及辅导书和资料,同时会有教研教辅双师模式对大家进行教学以及督学,并配有24小时答疑和模拟测试等,可直接咨询在线客服老师领取大额优惠券。

免责声明:本平台部分帖子来源于网络整理,不对事件的真实性负责,具体考研相关内容请以各院校的官网通知为准。 如果本站文章侵犯到您的权利,请联系我们(400-108-7500)进行删帖处理。
下一篇 最后一页

启航教育热门私房课

MORE
  • 26考研VIP领学计划

    全程跟进
    形式:线上+线下
     

    查看详情

    在线咨询

  • 26考研专属VIP班

    联报优惠
    形式:线上
     

    查看详情

    在线咨询

  • 26在职考研课程

    专为在职人定制
    形式:线上
     

    查看详情

    在线咨询

2026考研

小班面授 名额有限 抢先体验

点击预约 

为你推荐

    姓名

    手机号

    获取答案
    扫描上方二维码免费领取学习资料