8.翻转链表
Posted manmanchanglu
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了8.翻转链表相关的知识,希望对你有一定的参考价值。
leetcode题目位置:面试题24.反转链表
https://leetcode-cn.com/problems/fan-zhuan-lian-biao-lcof/
思路:借助栈的先进后出来进行反转,或者通过一个next节点来进行保存要反转到头的那个节点,防止链断裂
/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */ class Solution { public ListNode reverseList(ListNode head) { ListNode sum=new ListNode(0); ListNode p=head,q=sum; Stack<Integer> stack=new Stack(); String a; while(p!=null){ stack.push(p.val); p=p.next; } while(!stack.isEmpty()){ //a=stack.pop(); ListNode h=new ListNode(stack.pop()); q.next=h; q=h; } return sum.next; } }
以上是关于8.翻转链表的主要内容,如果未能解决你的问题,请参考以下文章