输入一个链表,从尾到头打印链表每个节点的值。
using System.Collections.Generic;
/*
public class ListNode
{
public int val;
public ListNode next;
public ListNode (int x)
{
val = x;
}
}*/
public class Solution
{
// 返回从尾到头的列表值序列
public List<int> printListFromTailToHead(ListNode listNode)
{
// write code here
List<int> list =new List<int>();
Stack<int> stack =new Stack<int>();
while(listNode!=null)
{
stack.Push(listNode.val);
listNode =listNode.next;
}
int length =stack.Count;
// 需要特别注意不要写成for(int i=0;i<stack.Count;i++) 栈的长度会改变
for(int i=0;i<length;i++)
{
list.Add(stack.Pop());
}
return list;
}
}