先序abcdefgh ?中序cbdaegfh ?求樹痛黎,和后續(xù)排放 ?
這么簡單的一道算法題目,估計(jì)計(jì)算機(jī)系的應(yīng)屆畢業(yè)生上過數(shù)據(jù)結(jié)構(gòu)課的∨屡瘢基本上是信手拈來了
一早上花了20分鐘多,才回憶起樹遍歷的一些算法和原理酗昼。
其實(shí)就是用遞歸的方式去處理廊谓。
原理解決方法 ?
public static void preOrder(BinaryTree root){? //先根遍歷
if(root!=null){
System.out.print(root.data+"-");
preOrder(root.left);
preOrder(root.right);
}
}
public?static?void?inOrder(BinaryTree?root){?????//中根遍歷
if(root!=null){
inOrder(root.left);
System.out.print(root.data+"--");
inOrder(root.right);
}
}
public?static?void?postOrder(BinaryTree?root){????//后根遍歷
if(root!=null){
postOrder(root.left);
postOrder(root.right);
System.out.print(root.data+"---");
}
}
通過這個(gè)上面的原理理解基本上大家都能推算出整個(gè)樹的結(jié)構(gòu)了。
好吧麻削,圖片歪了蒸痹。忽略這個(gè)細(xì)節(jié)。呛哟。我只是記錄一下叠荠。我花了20分搞了這題目。
順便回憶一下 樹的遍歷罷了扫责。榛鼎。