題解 | #反轉鏈表#加油
反轉鏈表
http://www.fangfengwang8.cn/practice/75e878df47f24fdc9dc3e400ec6058ca
import java.util.Stack; public class Solution { public ListNode ReverseList(ListNode head) { Stack<ListNode> stack= new Stack<>(); //把鏈表節(jié)點全部摘掉放到棧中 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 //等于空,否則會構成環(huán) node.next = null; return dummy; } }
加油沖