利用非遞迴演算法來搜尋二叉樹中的某個元素java
層序遍歷
可以利用層序遍歷來解決這個問題
程式碼
boolean searchUsingLevelOrder(BinaryTreeNode root,int data){
BinaryTreeNode temp;
LLQueue q = new LLQueue();
if(root == null)
return false;
q.enqueue(root);
while(q.isNotEmpty()){
temp = q.deQueue();
if(data == root.getData())
return true;
if(temp.getLeft() != null)
q.enqueue(temp.getLeft());
if(temp.getRight() != null)
q.enqueue(temp.getRight());
}
q.deleteQueue();
return false;
}
相關文章
- 【資料結構】——搜尋二叉樹的插入,查詢和刪除(遞迴&非遞迴)資料結構二叉樹遞迴
- 遍歷二叉樹-------遞迴&非遞迴二叉樹遞迴
- 二叉樹——後序遍歷的遞迴與非遞迴演算法二叉樹遞迴演算法
- 二叉樹建立及遍歷演算法(遞迴及非遞迴)二叉樹演算法遞迴
- 二叉樹的非遞迴遍歷——java實現二叉樹遞迴Java
- [java] 二叉樹的後序遍歷(遞迴與非遞迴實現)Java二叉樹遞迴
- 【C++】翻轉二叉樹(遞迴、非遞迴)C++二叉樹遞迴
- 二叉樹非遞迴遍歷二叉樹遞迴
- 二叉樹的前中後序遍歷(遞迴和非遞迴版本)二叉樹遞迴
- 二叉樹的四種遍歷(遞迴與非遞迴)二叉樹遞迴
- 每天刷個演算法題20160521:二叉樹高度(遞迴與非遞迴)演算法二叉樹遞迴
- 樹(2)--二叉樹的遍歷(非遞迴)+線索二叉樹二叉樹遞迴
- 【資料結構】二叉樹遍歷(遞迴+非遞迴)資料結構二叉樹遞迴
- 二叉樹的非遞迴遍歷寫法二叉樹遞迴
- 遍歷二叉樹的遞迴與非遞迴程式碼實現二叉樹遞迴
- 樹3-二叉樹非遞迴遍歷(棧)二叉樹遞迴
- 什麼是遍歷二叉樹,JavaScript實現二叉樹的遍歷(遞迴,非遞迴)二叉樹JavaScript遞迴
- 非遞迴先序遍歷二叉樹遞迴二叉樹
- 【刷題】二叉樹非遞迴遍歷二叉樹遞迴
- 【每日一題】二叉樹的前中後序非遞迴整理每日一題二叉樹遞迴
- 如何在 Java 中實現二叉搜尋樹Java
- 二叉樹的所有遍歷非遞迴實現二叉樹遞迴
- 演算法篇 - 二叉搜尋樹演算法
- 每天刷個演算法題20160518:非遞迴二叉樹遍歷演算法遞迴二叉樹
- 資料結構中的樹(二叉樹、二叉搜尋樹、AVL樹)資料結構二叉樹
- 二叉搜尋樹演算法詳解與Java實現演算法Java
- python實現二叉樹及其七種遍歷方式(遞迴+非遞迴)Python二叉樹遞迴
- 【微軟面試題】在二叉搜尋樹中找最小的大於某個key值的節點微軟面試題
- Leetcode 700. 二叉搜尋樹中的搜尋(DAY 2)LeetCode
- LeetCode-230-二叉搜尋樹中第K小的元素LeetCode
- Leetcode230. 二叉搜尋樹中第K小的元素LeetCode
- leetcode 700. 二叉搜尋樹中的搜尋 思考分析LeetCode
- 二叉搜尋樹的操作集
- Java實現二叉搜尋樹的插入、刪除Java
- 【Java資料結構與演算法筆記(二)】樹的四種遍歷方式(遞迴&非遞迴)Java資料結構演算法筆記遞迴
- Java中在二叉搜尋樹中查詢節點的父節點Java
- 重拾演算法(1)——優雅地非遞迴遍歷二叉樹及其它演算法遞迴二叉樹
- 如何計算二叉樹中葉節點的數量 - Java迭代和遞迴演算法二叉樹Java遞迴演算法