package OfferAnswer;
/**
* 定义ListNode
* @author lwk
*
*/
public class ListNode {
int value;
ListNode next;
public ListNode() {
}
public ListNode(int value) {
this.value = value;
}
}package OfferAnswer;
import java.util.Stack;
/**
* 面试题5
* 从尾到头打印链表
* @author lwk
*
*/
public class Answer05 { public static void main(String[] args) {ListNode p1 = new ListNode(1);ListNode p2 = new ListNode(2);ListNode p3 = new ListNode(3);ListNode p4 = new ListNode(4);p1.next = p2;p2.next = p3;p3.next = p4;printReversely(p1);} public static void printReversely(ListNode head){ if(head == null){ return; } //栈 先进后出 Stack<Integer> stack = new Stack<Integer>(); ListNode p = head; while(p != null){ stack.push(p.value); p = p.next; } while(!stack.isEmpty()){ System.out.print(stack.pop() + " "); } } }
本文介绍了一种使用栈实现从尾到头打印链表的方法。通过创建链表节点类ListNode及一个示例链表,文章详细展示了如何利用栈的特性来实现逆序打印链表的功能。

283

被折叠的 条评论
为什么被折叠?



