leetcode 173. Binary Search Tree Iterator
来源:互联网 发布:C语言aver 编辑:程序博客网 时间:2024/06/17 15:44
173. Binary Search Tree Iterator
Implement an iterator over a binary search tree (BST). Your iterator will be initialized with the root node of a BST.
Calling next()
will return the next smallest number in the BST.
Note: next()
and hasNext()
should run in average O(1) time and uses O(h) memory, where h is the height of the tree.
/** * Definition for binary tree * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; *//*思路其实和中序遍历一样,先把左子树压入,然后把遍历的时候再压入右子树。*/class BSTIterator {public: BSTIterator(TreeNode *root) { this->root = root; push_stack(this->root); } void push_stack(TreeNode *node) { while(node) { m1.push(node); node = node->left; } } bool hasNext() { return (root && !m1.empty()) ? 1 : 0; } int next() { TreeNode *p = m1.top(); m1.pop(); push_stack(p->right); //p->right 是比 p 大一些的值 return p->val; } private: TreeNode *root; stack<TreeNode *> m1; };/** * Your BSTIterator will be called like this: * BSTIterator i = BSTIterator(root); * while (i.hasNext()) cout << i.next(); */
阅读全文
0 0
- [LeetCode]173.Binary Search Tree Iterator
- [leetcode] 173.Binary Search Tree Iterator
- LeetCode 173. Binary Search Tree Iterator
- Leetcode 173. Binary Search Tree Iterator
- 173. Binary Search Tree Iterator LeetCode
- [LeetCode]173. Binary Search Tree Iterator
- [LeetCode]173. Binary Search Tree Iterator
- leetcode 173. Binary Search Tree Iterator
- LeetCode *** 173. Binary Search Tree Iterator
- LeetCode 173. Binary Search Tree Iterator
- [leetcode] 173. Binary Search Tree Iterator
- <LeetCode OJ> 173. Binary Search Tree Iterator
- [LeetCode]problem 173. Binary Search Tree Iterator
- LeetCode - 173. Binary Search Tree Iterator
- [leetcode] 173. Binary Search Tree Iterator
- [LeetCode] 173. Binary Search Tree Iterator
- LeetCode 173. Binary Search Tree Iterator
- LeetCode 173. Binary Search Tree Iterator
- Week 1, Aerial Robotics
- Android心跳包(一)——心跳机制
- php socket IO阻塞方式的Server/Client
- 想去阿里巴巴面试么
- Nginx学习-初步理解
- leetcode 173. Binary Search Tree Iterator
- maven私服nexus忘记密码,解决方法(转载)
- NOIP2017过山车记
- 引导滤波的opencv实现以及解释
- 利用SecureCRT上传、下载文件(使用sz与rz命令),超实用!
- 04-树4 是否同一棵二叉搜索树(25 分)---陈越、何钦铭-数据结构-2017秋
- 在window server 2012上安装.net framework 3.5的方法
- POI之根据模板导出word-yellowcong
- Deeplab-v2 编译过程中的问题