在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問(wèn)答/Java/ 劍指offer printListFromTailToHead 從尾到頭打印鏈表

劍指offer printListFromTailToHead 從尾到頭打印鏈表

public class Solution {
ArrayList<Integer> arrayList=new ArrayList<Integer>();

public ArrayList<Integer> printListFromTailToHead(ListNode listNode) {
    if(listNode!=null){ 
        this.printListFromTailToHead(listNode.next);
        arrayList.add(listNode.val); 
    } 
    return arrayList; 
}

搞不懂代碼中this的含義,而且arrayList.add(listNode.val); 添加不知這個(gè)節(jié)點(diǎn)的值嗎?為什么會(huì)是下一個(gè)節(jié)點(diǎn)的值a ?求大神解答

回答
編輯回答
逗婦惱

this代表當(dāng)前對(duì)象,創(chuàng)建Solution對(duì)象調(diào)用printListFromTailToHead方法,this指向Solution對(duì)象,在這段代碼中可用可不用。遞歸代碼執(zhí)行順序是遍歷到最后一個(gè)ListNode,ArrayList再?gòu)淖詈笠粋€(gè)ListNodeadd它的val.
例如7————>8————>9————>10,先用遍歷到10,再把10add進(jìn)list,再add9,所以實(shí)現(xiàn)了從尾到頭打印鏈表。

2017年1月30日 06:27