一、需求
- 输入一个链表,按链表值从尾到头的顺序返回一个ArrayList。
二、实现思路
- 1.定义一个类保存链表节点, 类 ListNode
- 2.输入一个链表,调用 inputLinkVal() 方法
- 3.将链表倒序添加到ArrayList集合中,调用printListFromTailToHead(ListNode listNode)
三、代码实现
/**
*
*
* 输入一个链表,按链表值从尾到头的顺序返回一个ArrayList。
*
* 1.定义一个类保存链表节点, 类 ListNode
* 2.输入一个链表,调用 inputLinkVal() 方法
* 3.将链表倒序添加到ArrayList集合中,调用printListFromTailToHead(ListNode listNode)
*
*/
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class Solution {
class ListNode { //内部类定义链表节点
int val;
ListNode next = null;
ListNode() {
}
ListNode(int val) {
this.val = val;
}
}
//按链表值从尾到头的顺序返回一个ArrayList。
public ArrayList<Integer> printListFromTailToHead(ListNode listNode) {
List<Integer> list = new ArrayList<>();
ListNode tmp = listNode.next; //链表头节点并没有存值