题解 | #反转链表#加油

反转链表

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 未知

相关推荐

自来熟的放鸽子能手面试中:北京交通大学在这想都不敢想是吧
点赞 评论 收藏
分享
急急国王想要offer:就是不约,就不理我
投递腾讯等公司10个岗位
点赞 评论 收藏
分享
3 收藏 评论
分享
牛客网
牛客企业服务