得到链表从尾到头的元素
public class Solution {
public ArrayList<Integer> getListFromTailToHead(ListNode listNode) {
ArrayList<Integer> result = new ArrayList<Integer>();
while(listNode != null){
int key = listNode.val;
result.add(0, key);
listNode = listNode.next;
}
return result;
}
result.add(0, key)
在list第一个位置加入元素
递归法:
public class Solution {
ArrayList<Integer> result = new ArrayList<Integer>();
public void help(ListNode listNode){
if(listNode!= null && listNode.next != null)
help(listNode.next);
if(listNode != null)
result.add(listNode.val);
}
public ArrayList<Integer> gettListFromTailToHead(ListNode listNode) {
help(listNode);
return result;
}
}
递归到最后一个元素 listNode != null && listNode.next == null
然后依次往上一个return,并添加到list
说点什么
您将是第一位评论人!