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

北京信息seo搜索引擎优化招聘

北京信息,seo搜索引擎优化招聘,专做化妆品网站,crmeb多商户源码题目: 给你单链表的头结点 head ,请你找出并返回链表的中间结点。 如果有两个中间结点,则返回第二个中间结点。 示例 1: 输入:head [1,2,3,4,5] 输出:[3,4,5] 解释:链表只有一个中间结点&#…

题目:

给你单链表的头结点 head ,请你找出并返回链表的中间结点。

如果有两个中间结点,则返回第二个中间结点。

示例 1:

输入:head = [1,2,3,4,5]
输出:[3,4,5]
解释:链表只有一个中间结点,值为 3 。

示例 2:

输入:head = [1,2,3,4,5,6]
输出:[4,5,6]
解释:该链表有两个中间结点,值分别为 3 和 4 ,返回第二个结点。

思路:

使用 快慢指针(Fast-Slow Pointers) 来找到链表的中间节点,快慢指针 slow:每次移动 1 步快指针 fast:每次移动 2 步。

代码:

struct ListNode* middleNode(struct ListNode* head) 
{if (head == NULL) {return NULL; // 处理空链表}struct ListNode* slow = head;struct ListNode* fast = head;// 快指针每次走2步,慢指针每次走1步while (fast != NULL && fast->next != NULL) {slow = slow->next;fast = fast->next->next;}return slow; // 慢指针指向中间节点
}

代码分析:

1. 快慢指针的初始化

  • 慢指针 slow:每次移动 1 步。

  • 快指针 fast:每次移动 2 步。

  • 初始位置:两者都从链表头节点 head 开始。

    struct ListNode* slow = head;
    struct ListNode* fast = head;

2. 移动规则

  • 循环条件:快指针能继续移动(即 fast 和 fast->next 均不为空)。
           这个条件是为了安全控制快指针的移动,确保在每次循环中能够安全访问 fast->next->next,避免空指针解引用导致的崩溃,防止 fast->next 为 NULL 时访问 fast->next->next。

    while (fast != NULL && fast->next != NULL)
    
  • 每次迭代:

    • 慢指针走 1 步:slow = slow->next

    • 快指针走 2 步:fast = fast->next->next

3. 终止条件

  • 当快指针无法继续移动时,慢指针指向中间节点:

    • 链表长度为奇数:fast 最终指向最后一个节点,slow 正好在中间。

      例:1 → 2 → 3 → 4 → 5
                            ↑
                       slow

    • 链表长度为偶数:fast 最终指向 NULLslow 指向中间偏右的节点。

      例:1 → 2 → 3 → 4
                            ↑
                         slow

4. 返回结果

  • 直接返回慢指针 slow,此时它指向中间节点。

    return slow;
http://www.dtcms.com/wzjs/70723.html

相关文章:

  • 网站怎么做微信支付宝支付好看的友情链接代码
  • 网站建设推广新闻深圳外包seo
  • 百度网站建设是什么360搜索引擎下载
  • 教学网页制作简述什么是seo
  • 扶贫工作网站怎么做seo设置是什么
  • 响应式设计的基本原理百度网站优化软件
  • 做珠宝网站价格多少网络营销的基本职能
  • 搜狗提交网站收录入口seo站长综合查询
  • 波兰 政府网站建设google官网
  • 北京大兴网站制作推广四川专业网络推广
  • 东莞网站设计公司网络推广方式主要有
  • 建设网站备案与不备案区别seo常用方法
  • 深圳网站建设推进软件推广接单平台
  • 做啥网站seo网络排名优化方法
  • 金山做企业网站东莞市网站seo内容优化
  • node怎么做网站百度软件下载安装
  • 长沙长沙建设网站长尾词挖掘工具
  • 做旅游网站挣钱吗网站不收录怎么解决
  • 怎样在门户网站做 推广注册一个域名需要多少钱
  • seo就业前景怎么样seo网站优化排名
  • 深圳便宜网站建设产品推广平台
  • 佛山专业做网站公司百度最新人工智能
  • 背景响应式网站开发 css做电商需要什么条件
  • 公司网站设计有基本哪些要求做推广app赚钱的项目
  • 睢宁微网站开发我的百度账号
  • 长春网站建设厂家国内b2b十大平台排名
  • 动态网站设计的基本流程产品市场推广计划书
  • 杭州精品课程网站建设百度信息流推广教程
  • app定制开发谈判技巧山东网络推广优化排名
  • 官方网站弹幕怎么做友情链接的网站有哪些