算法题3-按链表从尾到头的顺序返回一个ArrayList。

输入一个链表,按链表从尾到头的顺序返回一个ArrayList。

核心代码:

public ArrayList<Integer> printListFromTailToHead(ListNode listNode) {
  ArrayList<Integer> list = new ArrayList<>();
  Stack<Integer> stack = new Stack<>();
while (listNode != null) {
  stack.push(listNode.val);  //入栈
  listNode = listNode.next;//往后移动
     }
  while (!stack.isEmpty()) {
  list.add(stack.pop());      //出栈
    }
  return list;
}


class ListNode {
  int val;
  ListNode next = null;
  ListNode(int val) {
  this.val = val;
  }
}

猜你喜欢

转载自www.cnblogs.com/yindong2019/p/12548273.html