当前位置: 首页 > wzjs >正文

高端网站建设定制seo网站技术培训

高端网站建设定制,seo网站技术培训,品牌建设演讲稿,有了域名和空间怎么做网站反转链表 定义一个函数,输入一个链表的头结点,反转该链表并输出反转后链表的头结点。 思考题: 请同时实现迭代版本和递归版本。 数据范围 链表长度 [ 0 , 30 ] [0,30] [0,30]。 样例 输入:1->2->3->4->5->NULL输出:5-&…

反转链表


定义一个函数,输入一个链表的头结点,反转该链表并输出反转后链表的头结点。

思考题:

  • 请同时实现迭代版本和递归版本。
数据范围

链表长度 [ 0 , 30 ] [0,30] [0,30]

样例
输入:1->2->3->4->5->NULL输出:5->4->3->2->1->NULL

方案一、迭代

翻转即将所有节点的 next 指针指向前驱节点。

由于是单链表,我们在迭代时不能直接找到前驱节点,所以需要一个额外的指针保存前驱节点。
注意:在改变当前节点的 next 指针前,不要忘记保存它的后继节点。

复杂度分析:
  • 空间复杂度:遍历时只有 3 个额外变量(前驱节点、当前节点、后继节点),所以额外的空间复杂度是 O(1)
  • 时间复杂度:只遍历一次链表,时间复杂度是 O(n)
/*** Definition for singly-linked list.* struct ListNode {*     int val;*     ListNode *next;*     ListNode(int x) : val(x), next(NULL) {}* };*/
class Solution {
public:ListNode* reverseList(ListNode* head) {ListNode *prev = nullptr;ListNode *cur = head;while (cur){ListNode *next = cur->next;cur->next = prev;prev = cur, cur = next;}return prev;}
};
方案一、递归

首先考虑 reverseList 函数的作用:它可以翻转一个链表,并返回新链表的头节点(即原链表的尾节点)。

递归过程:
  1. 递归处理 reverseList(head->next)
    • 翻转以 head->next 为头节点的子链表,并返回原链表的尾节点 tail
  2. 调整指针
    • 此时 head->next 是新链表的尾节点,将其 next 指针指向 head
    • head->next 置空(防止成环)。
  3. 返回新头节点
    • 新链表的头节点是 tail,最终返回它即可完成整个链表的翻转。
复杂度分析:
  • 空间复杂度:递归深度为 n,系统栈空间占用 O(n)
  • 时间复杂度:每个节点仅被访问一次,时间复杂度为 O(n)
/*** Definition for singly-linked list.* struct ListNode {*     int val;*     ListNode *next;*     ListNode(int x) : val(x), next(NULL) {}* };*/
class Solution {
public:ListNode* reverseList(ListNode* head) {if (!head || !head->next) return head;ListNode *tail = reverseList(head->next);head->next->next = head;head->next = nullptr;return tail;}
};
http://www.dtcms.com/wzjs/337905.html

相关文章:

  • 电子商务网站建设与管理百度热搜榜单
  • 郴州做网站公司台州seo优化
  • 求一个做美食视频的网站品牌营销活动策划方案
  • node框架做网站阿里云域名查询
  • 国外做网站卖东西要什么条件如何搭建一个网站
  • 公司网站开发外包公司宁波seo推广哪家好
  • 企业级网站开发技术网搜网
  • 网站后台怎么制作全国疫情的最新数据
  • 专业网站设计 软件沈阳网站关键词优化公司
  • 弥勒网站开发郑州技术支持seo
  • 要是360网站不安全怎么做seo网页优化服务
  • 天猫是不是b2b电子商务网站广州疫情最新消息
  • 北京vi设计公司价格seo辅助工具
  • 上海网站建设服务百度广告一级代理
  • 做简单网站的框架上海百度提升优化
  • 做艺术品的网站有哪些seo官网优化
  • 制作一个网站平台百度网盘网页版入口官网
  • 芒市网站建设公司友链网站
  • 做外贸哪个网站比较好今日西安头条最新消息
  • 打开网站鞍山网络推广
  • 贵州网站建设吧百度网站管理员工具
  • wordpress百度收录之自动推送设置深圳白帽优化
  • 创建一个购物网站需要什么网络营销推广方案策划书
  • 网站的绝对路径怎么做上海服务政策调整
  • 网站建设注意要点网络推广大概需要多少钱
  • 建网站 铸品牌 做推广专注于seo顾问
  • 安徽省住房和城乡建设厅网站6厦门seo网站排名优化
  • 亚马逊怎么做网站推广网络营销的含义的理解
  • 海淀网站建设哪家公司好seo推广排名重要吗
  • 如何用ps做网站图标百度收录查询工具