二叉樹前序中序後序遍歷及節點的查詢

2021-10-04 19:37:00 字數 1673 閱讀 7917

package demo5;

public class binarytree

//獲取根節點

public treenode getroot()

public void frontshow()

}public void midshow()

}public void aftershow()

}public treenode presearch(int i)

public treenode midsearch(int i)

public treenode aftersearch(int i)

}

package demo5;

public class treenode

//設定左兒子

public void setleftnode(treenode leftnode)

//設定右兒子

public void setrightnode(treenode rightnode)

//前序遍歷

public void frontshow()

//右節點

if(rightnode!=null)

}//中序遍歷

public void midshow()

//當前節點

system.out.print(value+" ");

//右節點

if(rightnode!=null)

}//後序遍歷

public void aftershow()

//右節點

if(rightnode!=null)

//當前節點

system.out.print(value+" ");

}//前序查詢

public treenode presearch(int i) else

//如果不為空,說明在左兒子中已經找到

if(target!=null)

//查詢右兒子

if(rightnode!=null)

}return target;

}//中序查詢

public treenode midsearch(int i)

//如果不為空,說明在左兒子中已經找到

if(target!=null)

//對比當前節點的值

if(this.value==i)

//查詢右兒子

if(rightnode!=null)

return target;

}//後序查詢

public treenode aftersearch(int i)

//如果不為null,說明在左兒子中已經找到

if(target!=null)

//查詢右兒子

if(rightnode!=null)

//如果target不為空,說明在右兒子中已經找到

if(target!=null)

//對比當前節點的值

if(this.value==i)

return null;

}}

package demo5;

public class testbinarytree

}

二叉樹 前序遍歷 中序遍歷 後序遍歷

前序遍歷 dlr 是二叉樹遍歷的一種,也叫做先跟遍歷,先序遍歷,前序周遊,可記做根左右。前序遍歷首先訪問根節點然後遍歷左子樹,最後遍歷右子樹。前序遍歷首先訪問根節點然後遍歷左子樹,最後遍歷右子樹。在遍歷左 右子樹時,仍然先訪問根節點,然後遍歷左子樹,最後遍歷右子樹。若二叉樹為空則結束返回,否則 1 ...

二叉樹前序,中序,後序遍歷詳解

只要是搞計算機的,對資料結構中二叉樹遍歷都不陌生,但是如果用到的機會不多那麼就會慢慢淡忘,溫故而之新才是最好的學習方式,現在就重新溫習一下這方面的知識。首先我想先改變這幾個遍歷的名字 前根序遍歷,中根序遍歷,後根序遍歷 前中後本來就是相對於根結點來說的,少乙個字會產生很多不必要的誤解。1.前根序遍歷...

二叉樹前序,中序,後序遍歷詳解

只要是搞計算機的,對資料結構中二叉樹遍歷都不陌生,但是如果用到的機會不多那麼就會慢慢淡忘,溫故而之新才是最好的學習方式,現在就重新溫習一下這方面的知識。首先我想先改變這幾個遍歷的名字 前根序遍歷,中根序遍歷,後根序遍歷 前中後本來就是相對於根結點來說的,少乙個字會產生很多不必要的誤解。1.前根序遍歷...