链表的中间结点

一、求出链表的总长度count,再次遍历链表当index==count/2+1时,将此时的cur赋值给newHead(中间结点),无论链表长度为奇数还是偶数,index都应该等于count/2+1.

二、使用双引用遍历(快慢指针),慢指针每次走一个结点,快指针每次走两个结点,此时,当快指针走到链尾时(快指针==null),慢指针就刚好走在中间结点了。需要注意的是:两个指针走的顺序必须是:快指针走一个->慢指针走一个->快指针再走一个(一个周期),并且在快指针每走一个结点后,都必须判断一下快结点是否为空,只有这样才可以保证只有一个元素的时候不会出现空指针异常,并且可以保证firstNode返回的是满足题目要求的样式(单数正中间,双数中间后面那个)

相关文章:
-
2022-02-25
-
2021-12-31
-
2022-02-23
-
2021-08-20
-
2022-03-02
-
2021-08-22
-
2022-12-23
-
2022-02-19
猜你喜欢
-
2021-07-08
-
2022-02-20
-
2022-02-21
-
2022-12-23
-
2021-11-24
-
2021-08-18
相关资源
-
下载
2021-11-03
-
下载
2022-12-05
-
下载
2023-01-25
-
下载
2023-03-09