首页 > 解决方案 > 反转双向链表,但无限循环

问题描述

我试过反转双向链表,这是我的反转代码!为什么我要进入无限循环?

public void reverselist() {
    
    Doubly_node temp = head;
    
    while(temp.next != null) {
        
        temp = temp.next;
    }
    
    
    
    while(temp.prev != null) {
        System.out.println(temp.data);
        temp= temp.prev;
    }
    
}

在此处输入链接描述

标签: javadoubly-linked-list

解决方案


你只想遍历或反向双向链表?检查下面

    {
        Doubly_node curr = head;
        Doubly_node t = null;

        while (curr != null) {
            t = curr.prev;
            curr.prev = curr.next;
            curr.next = t;
            curr = curr.prev;
        }
        if (t != null) {
            head = t.prev;
        }
    }

推荐阅读