LeetCode 876 题解

news/2024/11/23 20:58:25/

 

876. Middle of the Linked List

题目大意:返回一个list中间的元素,如果有两个则返回第二个;

解题思路:利用两个指针,一个步长为1一个为2,当2走到尾端,第一个走到的就是答案;

class Solution {
public:ListNode* middleNode(ListNode* head) {if(head==NULL || head->next==NULL) return head;ListNode* p1=head;ListNode* p2=head;while(p2!=NULL){if(p2->next !=NULL) ;else break;p1 =  p1->next;p2 =  p2->next;if(p2->next !=NULL) p2 = p2->next;}return p1;}
};

 


http://www.ppmy.cn/news/537800.html

相关文章

LeetCode刷题 876链表的中间结点

876. 链表的中间结点 难度简单550收藏分享切换为英文接收动态反馈 给定一个头结点为 head 的非空单链表,返回链表的中间结点。 如果有两个中间结点,则返回第二个中间结点。 示例 1: 输入:[1,2,3,4,5] 输出:此列表中的结…

力扣练题之876题:链表的中间结点

题目描述:876.链表的中间结点 给定一个头结点为 head 的非空单链表,返回链表的中间结点。 如果有两个中间结点,则返回第二个中间结点。 示例: 输入:[1,2,3,4,5] 输出:此列表中的结点 3 (序列化形式&…

876. 链表的中间结点

文章目录 题目描述做题思路代码实现题目链接 题目描述 给定一个头结点为 head 的非空单链表,返回链表的中间结点。 如果有两个中间结点,则返回第二个中间结点。 示例 1: 输入:[1,2,3,4,5] 输出:此列表中的结点 3 (序列…

LeetCode-876. 链表的中间结点 C语言

876. 链表的中间结点 给定一个头结点为 head 的非空单链表,返回链表的中间结点。 如果有两个中间结点,则返回第二个中间结点。 示例 1: 输入:[1,2,3,4,5] 输出:此列表中的结点 3 (序列化形式:[3,4,5]) 返…

Leetcode876.链表的中间节点

876.链表的中间节点 给定一个头结点为 head 的非空单链表,返回链表的中间结点。 如果有两个中间结点,则返回第二个中间结点。 题目:876. 链表的中间结点 - 力扣(LeetCode) (leetcode-cn.com) 思路:利用快…

LC 876

ListNode* middleNode(ListNode* head) {int counter0;ListNode* lhead;ListNode* l1head;if(l->nextNULL) return l;while(l!NULL){ll->next;counter;}int midcounter/21;for(mid;mid>1;mid--){l1l1->next; }return l1;}

Codeforces Round 876 (Div. 2)

A.直接模拟即可 贪心放1的时候直接放i #include <iostream> #include <cstring> #include <algorithm> #include <vector> #include <set> #include <map> #include <cmath> #include<functional> using namespace std; con…

leetCode876

快慢指针法&#xff0c;学到了 /*** 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* fast hea…