关注
TreeNode* lowestCommonAncestor(TreeNode* root, TreeNode* p, TreeNode* q) {
stack<TreeNode*> stk;
if (root) stk.push(root);
while (!stk.empty()) {
root = stk.top(); stk.pop();
if (root) {
stk.push(root);
stk.push(nullptr);
if (root->right) stk.push(root->right);
if (root->left) stk.push(root->left);
} else {
root = stk.top(); stk.pop();
if ((root->left == p &;;&;; root->right == q) ||
(root->left == q &;;&;; root->right == p)) return root;
if (root == p &;;&;; (root->left == q || root->right == q)) return root;
if (root == q &;;&;; (root->left == p || root->right == p)) return root;
if (root->left == p || root->right == p) p = root;
if (root->left == q || root->right == q) q = root;
}
}
return nullptr;
}
查看原帖
1 评论
相关推荐
点赞 评论 收藏
分享
05-21 16:15
门头沟学院 算法工程师 
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 你觉得实习能学到东西吗 #
33522次浏览 672人参与
# 百度工作体验 #
221524次浏览 1967人参与
# 现代汽车前瞻技术研发急速编程挑战赛 #
27006次浏览 213人参与
# 秋招什么时候开投比较合适? #
21353次浏览 298人参与
# 发工资后,你做的第一件事是什么 #
67905次浏览 229人参与
# 实习,不懂就问 #
44328次浏览 665人参与
# 如何准备秋招 #
19281次浏览 367人参与
# 机械人与华为的爱恨情仇 #
116646次浏览 945人参与
# 机械人集合!你是什么工程师? #
15598次浏览 89人参与
# 找不到好工作选择GAP真的丢人吗 #
77970次浏览 938人参与
# 工作中哪个瞬间让你想离职 #
25683次浏览 177人参与
# 快手求职进展汇总 #
546766次浏览 6001人参与
# 硬件应届生薪资是否普遍偏低? #
73836次浏览 514人参与
# 不考虑转正,实习多久合适 #
31926次浏览 145人参与
# 你们公司几号发工资 #
20842次浏览 140人参与
# 多益网络求职进展汇总 #
29015次浏览 134人参与
# 软开人,秋招你打算投哪些公司呢 #
102733次浏览 958人参与
# 每个月的工资都是怎么分配的? #
26923次浏览 422人参与
# 你觉得现在还能进互联网吗? #
8114次浏览 132人参与
# 面试中,你被问过哪些奇葩问题? #
68327次浏览 796人参与
# 元戎启行求职进展汇总 #
32531次浏览 240人参与