题解 | #反转链表#加油

反转链表

https://www.nowcoder.com/practice/75e878df47f24fdc9dc3e400ec6058ca

import java.util.Stack;
public class Solution {
public ListNode ReverseList(ListNode head) {
    Stack<ListNode> stack= new Stack<>();
    //把链表节点全部摘掉放到栈中
    while (head != null) {
        stack.push(head);
        head = head.next;
    }
    if (stack.isEmpty())
        return null;
    ListNode node = stack.pop();
    ListNode dummy = node;
    //栈中的结点全部出栈,然后重新连成一个新的链表
    while (!stack.isEmpty()) {
        ListNode tempNode = stack.pop();
        node.next = tempNode;
        node = node.next;
    }
    //最后一个结点就是反转前的头结点,一定要让他的next
    //等于空,否则会构成环
    node.next = null;
    return dummy;
}
}

加油冲

全部评论
加油呀
点赞 回复 分享
发布于 2023-01-10 17:59 北京
jiayou a
点赞 回复 分享
发布于 2023-01-12 19:35 北京
2
点赞 回复 分享
发布于 2023-01-31 12:15 未知
3
点赞 回复 分享
发布于 2023-01-31 12:30 江苏
1
点赞 回复 分享
发布于 2023-01-31 12:39 未知

相关推荐

无助的缄默:我太想进步了 你看,又急
点赞 评论 收藏
分享
大耳朵屠屠:nb了,他怎么不说自己能联系阎罗王改生死簿,给学生减寿三年??
点赞 评论 收藏
分享
3 收藏 评论
分享
牛客网
牛客企业服务