bl双性强迫侵犯h_国产在线观看人成激情视频_蜜芽188_被诱拐的少孩全彩啪啪漫画

二叉搜索樹迭代器指的是什么

這篇文章給大家介紹二叉搜索樹迭代器指的是什么,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

成都創新互聯專注于企業成都全網營銷、網站重做改版、萬載網站定制設計、自適應品牌網站建設、H5高端網站建設商城網站開發、集團公司官網建設、成都外貿網站建設、高端網站制作、響應式網頁設計等建站業務,價格優惠性價比高,為萬載等各大城市提供網站開發制作服務。

實現一個二叉搜索樹迭代器。你將使用二叉搜索樹的根節點初始化迭代器。

調用 next() 將返回二叉搜索樹中的下一個最小的數。

示例:

二叉搜索樹迭代器指的是什么

BSTIterator iterator = new BSTIterator(root); iterator.next();    

// 返回 3 iterator.next();    

// 返回 7 iterator.hasNext(); 

// 返回 true iterator.next();    

// 返回 9 iterator.hasNext(); 

// 返回 true iterator.next();    

// 返回 15 iterator.hasNext(); 

// 返回 true iterator.next();    

// 返回 20 iterator.hasNext(); 

// 返回 false

答案:

 1class BSTIterator {
2
3    private Stack<TreeNode> stack = new Stack<TreeNode>();
4
5    public BSTIterator(TreeNode root) {
6        pushAll(root);
7    }
8
9    public boolean hasNext() {
10        return !stack.isEmpty();
11    }
12
13    public int next() {
14        TreeNode tmpNode = stack.pop();
15        pushAll(tmpNode.right);
16        return tmpNode.val;
17    }
18
19    private void pushAll(TreeNode node) {
20        for (; node != null; stack.push(node), node = node.left) ;
21    }
22}

解析:
如果對二叉樹的dfs(深度優先搜索)比較熟悉的話,這題很容易理解。

關于二叉搜索樹迭代器指的是什么就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

當前標題:二叉搜索樹迭代器指的是什么
當前鏈接:http://vcdvsql.cn/article22/pdhdcc.html

成都網站建設公司_創新互聯,為您提供建站公司品牌網站設計小程序開發定制網站網站改版網站導航

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

外貿網站建設