第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會有你想問的

java二叉樹與vector類的問題

java二叉樹與vector類的問題

迷失代碼林 2017-04-29 11:18:07
書本題目要求遍歷下面的二叉樹,這個(gè)我是辦到了,但是其中有些細(xì)節(jié),我理解不了,請高手大神們幫忙指點(diǎn)一下!我套用了書中例題的代碼,我對這個(gè)代碼一開始是表示懷疑的,但是一運(yùn)行發(fā)現(xiàn)是對的。之后我就想看看到底是怎么運(yùn)作的,代碼和結(jié)果如下: public?static?Vector<TreeNode>?rootMid(TreeNode?root){//中序遍歷 Vector<TreeNode>?result=new?Vector<TreeNode>(); if?(root==null)?{ return?result; } System.out.print("一"+root.nodevalue+","); Vector<TreeNode>?lNodes=rootMid(root.lNode); System.out.print("二"+root.nodevalue+";"); result.addAll(lNodes); result.add(root); Vector<TreeNode>?rNodes=rootMid(root.rNode); result.addAll(rNodes); return?result; }public?class?DateStructure?{ public?static?void?main(String[]?args)?{ TreeNode?a,b,d,g,e,f,h; h=new?TreeNode("h"); f=new?TreeNode("f",h,null); e=new?TreeNode("e",f,null); g=new?TreeNode("g"); d=new?TreeNode("d",g,null); b=new?TreeNode("b",d,e); a=new?TreeNode("a",b,null); Vector<TreeNode>?result=new?BinaryTree().rootMid(a); System.out.print("中序遍歷結(jié)果:"); for(TreeNode?tn:result){ System.out.print("、"+tn.nodevalue); } } }運(yùn)行后結(jié)果:一a,一b,一d,一g,二g;二d;二b;一e,一f,一h,二h;二f;二e;二a;中序遍歷結(jié)果:、g、d、b、h、f、e、a首先“一”字開頭的部分我是理解的,我覺得方法遞歸的順序就是這樣,但是遍歷結(jié)果我理解不了,雖然我知道這個(gè)結(jié)果對題目要求來說是正確的,但是我的理解結(jié)果更傾向“一”這樣的順序,就算是棧那樣的后來居上的添加方式,那“a”不也應(yīng)該是排中間嗎?另外“二”開頭的字母,它這個(gè)輸出方法和“一”是一樣的,代碼中并沒有對root進(jìn)行重新賦值或排序,怎么就變成這樣了?求指點(diǎn)?。?!
查看完整描述

目前暫無任何回答

  • 0 回答
  • 0 關(guān)注
  • 1333 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號