找中点其实很好操作的:
一个快指针,一个慢指针,每次fast指针比慢指针多走一步,那么当快指针到链表终止时,slow指针刚刚好就是链表的中点
就是因为这哥代码害我搞了一天,如果按这样子的话,fast指针始终只是比慢指针slow多走一步,不可能实现找中点的!
fast=slow.next
应该是:
fast=fast.next.next
错误示范:
class Solution {
public TreeNode sortedListToBST(ListNode head) {
if(head == null) return null;
else if(head.next == null