当前位置: 首页> 科技> IT业 > 免费在线观看电影电视剧网站_宁波网站关键词优化排名_武汉seo 网络推广_上海排名优化seobwyseo

免费在线观看电影电视剧网站_宁波网站关键词优化排名_武汉seo 网络推广_上海排名优化seobwyseo

时间:2025/7/11 16:45:39来源:https://blog.csdn.net/u012149181/article/details/145816317 浏览次数:0次
免费在线观看电影电视剧网站_宁波网站关键词优化排名_武汉seo 网络推广_上海排名优化seobwyseo

235.二叉搜索树的最近公共祖先

//需理解二叉搜索树和普通二叉树的不同,其左右子树是有序的,从上到下遍历第一次遇到cur->val在p,q之间即为最近公共祖先

    TreeNode* lowestCommonAncestor(TreeNode* root, TreeNode* p, TreeNode* q) {if(root == nullptr) return nullptr;if(root->val > p->val && root->val > q->val){return lowestCommonAncestor(root->left, p, q);}else if (root->val < p->val && root->val < q->val){return lowestCommonAncestor(root->right, p, q);}else{return root;}}

701.二叉搜索树中的插入操作

    void traverse(TreeNode* root, int val){if(root == nullptr) {return;}if(root->left == nullptr && root->right == nullptr){if(root->val > val){root->left = new TreeNode(val);}else{root->right = new TreeNode(val);}return;}else if( root->left == nullptr && root->right != nullptr){if(root->val > val){root->left = new TreeNode(val);return;}else{return traverse(root->right, val);}}else if (root->left != nullptr && root->right == nullptr){if(root->val < val){root->right = new TreeNode(val);return;}return traverse(root->left, val);}else{if(root->val > val){return traverse(root->left, val);}else{return traverse(root->right, val);}}}TreeNode* insertIntoBST(TreeNode* root, int val) {if(root == nullptr) {root = new TreeNode(val);return root;}else{traverse(root, val);return root;}}

//简答写法,便于理解

    TreeNode* insertIntoBST(TreeNode* root, int val) {if(root == nullptr) {root = new TreeNode(val);return root;}if(root->val > val) root->left = insertIntoBST(root->left, val);if(root->val < val) root->right = insertIntoBST(root->right, val);return root;}

450.删除二叉搜索树中的节点,需二刷

//注意搜索树和搜索边的区别及用法,还有删除节点时左子树的位置变化

    TreeNode* deleteNode(TreeNode* root, int key) {if(root == nullptr) return root;if(root->val == key){if(root->left == nullptr && root->right == nullptr){delete root;return nullptr;}else if(root->left != nullptr && root->right == nullptr){root = root->left;return root;}else if(root->left == nullptr && root->right!= nullptr){root = root->right;return root;}else{TreeNode* cur = root->right;while(cur->left){cur = cur->left;}cur->left = root->left;root = root->right;return root;}}if(root->val > key) root->left = deleteNode(root->left, key);if(root->val < key) root->right = deleteNode(root->right, key);return root;}

关键字:免费在线观看电影电视剧网站_宁波网站关键词优化排名_武汉seo 网络推广_上海排名优化seobwyseo

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: