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

徐州微信网站建设大型门户网站建设费用

徐州微信网站建设,大型门户网站建设费用,企业单位网站怎么做,seo关键词如何布局876. 链表的中间结点 算法 快慢指针 & 题目特征 需要对链表中的节点进行遍历,并且需要根据节点之间的相对位置或者距离进行操作 题目链接:https://leetcode.cn/problems/middle-of-the-linked-list/ 算法 快慢指针 & 题目特征 需要对链表中…

876. 链表的中间结点

    • 算法 = 快慢指针 & 题目特征 = 需要对链表中的节点进行遍历,并且需要根据节点之间的相对位置或者距离进行操作

 


题目链接:https://leetcode.cn/problems/middle-of-the-linked-list/

算法 = 快慢指针 & 题目特征 = 需要对链表中的节点进行遍历,并且需要根据节点之间的相对位置或者距离进行操作

思路:用两个指针 slow 与 fast 一起遍历链表。slow 一次走一步,fast 一次走两步。那么当 fast 到达链表的末尾时,slow 必然位于中间。

class Solution {
public:ListNode* middleNode(ListNode* head) {ListNode* slow, head = nullptr;while (fast != nullptr && fast->next != nullptr) {slow = slow->next;fast = fast->next->next;}return slow;}
};

细节处理:如果有两个中间结点,则返回第二个中间结点。

对于一个偶数长度的链表,假设链表中有 6 个节点,节点分别为 1 -> 2 -> 3 -> 4 -> 5 -> 6。

当 slow 和 fast 初始都指向链表的头节点时,slow 每次移动一步,fast 每次移动两步。

  1. 第一步:slow 移动到节点 2,fast 移动到节点 3。
  2. 第二步:slow 移动到节点 3,fast 移动到节点 5。
  3. 第三步:slow 移动到节点 4,fast 移动到节点 6。

此时,fast 到达了链表的末尾,slow 位于链表的中间位置,即节点 4。

根据这个例子,我们可以看到,当链表长度为偶数时,slow 确实返回的是中间的第二个节点,即节点 4。这是因为 fast 每次移动两步,相当于 slow 移动的速度的两倍,所以在链表长度为偶数时,slow 必然会落在中间的第二个节点上。

如果希望返回中间的第一个节点,可以在初始化时让 fast 指向链表的第一个节点,然后进行相同的遍历操作。这样,当 fast 到达链表的末尾时,slow 就会指向中间的第一个节点。
 


细节处理:如果我们希望在链表长度为偶数时返回中间的第一个节点,可以进行相应的调整,例如让 fast 初始时指向链表的第二个节点,然后进行相同的遍历操作。这样,当 fast 到达链表末尾时,slow 就会指向中间的第一个节点。

对于一个偶数长度的链表,假设链表中有 6 个节点,节点分别为 1 -> 2 -> 3 -> 4 -> 5 -> 6。

当 slow 初始指向链表的头节点,fast 初始指向链表的第二个节点时,slow 每次移动一步,fast 每次移动两步。

  1. 第一步:slow 移动到节点 1,fast 移动到节点 3。
  2. 第二步:slow 移动到节点 2,fast 移动到节点 5。
  3. 第三步:slow 移动到节点 3,fast 移动到节点 6。

此时,fast 到达了链表的末尾,slow 位于链表的中间位置,即节点 3。

根据这个例子,我们可以看到,当链表长度为偶数时,通过让 fast 初始指向链表的第二个节点,slow 确实返回的是中间的第一个节点,即节点 3。

所以,通过调整 fast 初始位置,我们可以控制在链表长度为偶数时返回中间的第一个节点还是第二个节点。

http://www.yayakq.cn/news/848801/

相关文章:

  • 原创网站源码成都网络公司
  • 图书网站建设用zend做饿了么网站
  • 网站建设对企业的好处在线做ps是什么网站
  • 网站建设ui设计公司洛阳霞光做网站
  • 做商城网站合作合同网站怎么优化seo
  • 网站的后期运营及维护费用茶叶网页设计素材
  • 网站建设风险管理wordpress自动生成网站地图
  • 宁夏 网站制作品牌建设最高境界
  • 莱芜市网站建设设计刷外链网站
  • 网站如何生成静态页面wordpress 上传开发
  • 代做毕设自己专门网站ui设计自学学的出来吗
  • 加强机关网站内容建设域名查询权威网站
  • 最新网站架构手表网站
  • 响应式网站都有哪些质量管理
  • 西安网站运营做网站项目需求分析是什么
  • php网站培训班高职院校优质校建设专栏网站
  • html做的宠物网站设计说明怎么写范文
  • 全球网站流量查询网站建设怎么入账
  • 做网站需要注册商标是几类宣城网站建设费用
  • 下列关于网站开发中网友上传在国外视频网站做中国美食
  • 代做网站 作业广州电子商城网站
  • 网站开发项目商业计划书wordpress 商品 模板下载
  • wordpress博客整站源码外加工平台
  • 洋县建设银行网站可克达拉市建设局网站
  • 成都市专业制作网站本人找做钢筋笼的活网站
  • 北京商场招商信息wordpress优化打开速度插件
  • 家具品牌网站一个刚做好的网站怎么做seo
  • wordpress网站图片加速网站建设的作用有哪些
  • 网络文学网站开发嘉兴做外贸网站比较好的公司
  • 广州技术支持 网站建设广州app开发网站建设