博客
关于我
Leetcode 876. 链表的中间结点
阅读量:227 次
发布时间:2019-03-01

本文共 853 字,大约阅读时间需要 2 分钟。

给定一个带有头结点 head 的非空单链表,返回链表的中间结点。

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

 

示例 1:

输入:[1,2,3,4,5]输出:此列表中的结点 3 (序列化形式:[3,4,5])返回的结点值为 3 。 (测评系统对该结点序列化表述是 [3,4,5])。注意,我们返回了一个 ListNode 类型的对象 ans,这样:ans.val = 3, ans.next.val = 4, ans.next.next.val = 5, 以及 ans.next.next.next = NULL.

示例 2:

输入:[1,2,3,4,5,6]输出:此列表中的结点 4 (序列化形式:[4,5,6])由于该列表有两个中间结点,值分别为 3 和 4,我们返回第二个结点。

 

提示:

  • 给定链表的结点数介于 1 和 100 之间。

 

可以使用经典的快慢指针方法,这里使用简单的两次遍历法

/** * 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* current=head;        int num=0;        while(current)        {            num++;            current=current->next;        }        current = head;        for(int i=0;i
next; } return current; }};

 

转载地址:http://rhhv.baihongyu.com/

你可能感兴趣的文章
nginx的平滑升级方法:
查看>>
Nginx的是什么?干什么用的?
查看>>
Nginx的端口修改问题
查看>>
Nginx的配置文件位置以及组成部分结构讲解
查看>>
Nginx的集群与负载均衡
查看>>
Vue中利用Object.defineProperty实现数据更新
查看>>
nginx看这一篇文章就够了
查看>>
Nginx知识详解(理论+实战更易懂)
查看>>
Nginx简单介绍
查看>>
Nginx系列6之-rewirte功能使用案例总结
查看>>
nginx线程模型理解
查看>>
nginx自动摘除和恢复后端服务,进行自动检测
查看>>
NGINX自动清理180天之前的日志
查看>>
Nginx虚拟主机配置
查看>>
Nginx虚拟目录配置文件(包含PHP配置与重写)
查看>>
Nginx访问控制_登陆权限的控制(http_auth_basic_module)
查看>>
nginx访问控制配置
查看>>
nginx负载均衡
查看>>
Nginx负载均衡
查看>>
Nginx负载均衡与动静分离架构实现
查看>>