[每日一题] 158. 链表的中间结点(快慢指针、常规解法)

1. 题目来源

链接:876. 链表的中间结点
来源:LeetCode

2. 题目说明

在这里插入图片描述

3. 题目解析

方法一:快慢指针+常规解法

所以就简单的快慢指针吗???

参见代码如下:

// 执行用时 :0 ms, 在所有 C++ 提交中击败了100.00%的用户
// 内存消耗 :8 MB, 在所有 C++ 提交中击败了100.00%的用户

/**
 * Definition for singly-linked list.
 * struct ListNode {
 *     int val;
 *     ListNode *next;
 *     ListNode(int x) : val(x), next(NULL) {}
 * };
 */
class Solution {
public:
    ListNode* middleNode(ListNode* head) {
        ListNode* left = head;
        ListNode* right = head;
        while (right != nullptr and right->next != nullptr) {
            right = right->next->next;
            left = left->next; 
        }
        return left;
    }
};
发布了391 篇原创文章 · 获赞 329 · 访问量 8万+

猜你喜欢

转载自blog.csdn.net/yl_puyu/article/details/105055870
今日推荐