Cómo encontrar el nodo medio de la lista vinculada

Mantenga dos punteros, uno es un puntero rápido y el otro es un puntero lento. Se recorre la lista vinculada. El puntero rápido se mueve dos unidades a la vez y el puntero lento se mueve una unidad a la vez. Cuando el puntero rápido alcanza el punto final, si el número de nodos es Número impar, el puntero lento apunta al medio, si el número de nodos es par, el puntero lento apunta a la derecha del medio

class Solution {
    
    
    public ListNode findMid(ListNode start){
    
    
        ListNode left=start,right=start;
        while(right!=null&&right.next!=null){
    
    
            right=right.next;
            right=right.next;
            left=left.next;
        }
        return left;
    }
 }

Supongo que te gusta

Origin blog.csdn.net/CY2333333/article/details/108081142
Recomendado
Clasificación