力扣
定义一个函数,输入一个链表的头节点,反转该链表并输出反转后链表的头节点。
示例:
输入: 1->2->3->4->5->NULL
输出: 5->4->3->2->1->NULL
力扣的头节点好像和c不一样,头节点直接存放第一个有效数据
class Solution {
public ListNode reverseList(ListNode head) {
Stack stack = new Stack<>();
ListNode c=head;
while(c!=null){
stack.push(c);
c=c.next;
}
if(stack.isEmpty())
return null;
ListNode s=stack.pop();
ListNode node=s;
while(!stack.isEmpty()){
ListNode temp=stack.pop();
s.next=temp;
s=s.next;
}
s.next=null;
return node;
}
}



