当前位置: 首页 > news >正文

太原seo四川网站推广优化

太原seo,四川网站推广优化,全网推广平台,浙江外贸人才网文章目录 一、题目二、解法三、完整代码 所有的LeetCode题解索引#xff0c;可以看这篇文章——【算法和数据结构】LeetCode题解。 一、题目 二、解法 思路分析#xff1a;二叉搜索树的性质#xff1a;左节点键值 中间节点键值 右节点键值。那么我们根据此性质可以看这篇文章——【算法和数据结构】LeetCode题解。 一、题目 二、解法 思路分析二叉搜索树的性质左节点键值 中间节点键值 右节点键值。那么我们根据此性质对比目标值和中间节点如果val值较小在左边子树进行搜索否则在右边子树进行搜索。程序采用递归实现。   程序如下 class Solution { public:// 递归法// 1、输入参数TreeNode* searchBST(TreeNode* root, int val) { // 2.终止条件if (root NULL || root-val val) return root; // 找到目标值标志位变为1返回目标节点// 3.单层递归逻辑对比根节点和val if (root-val val) return searchBST(root-left, val); // val较小在左边子树 if (root-val val) return searchBST(root-right, val); // val较大在右边子树// 1.返回值return NULL;} };复杂度分析 时间复杂度 O ( n ) O(n) O(n)。空间复杂度 O ( n ) O(n) O(n)。 三、完整代码 # include iostream # include vector # include string # include queue # include stack using namespace std;// 树节点定义 struct TreeNode {int val;TreeNode* left;TreeNode* right;TreeNode() : val(0), left(nullptr), right(nullptr) {}TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}TreeNode(int x, TreeNode* left, TreeNode* right) : val(x), left(left), right(right) {} };class Solution { public:// 递归法// 1、输入参数TreeNode* searchBST(TreeNode* root, int val) { // 2.终止条件if (root NULL || root-val val) return root; // 找到目标值标志位变为1返回目标节点// 3.单层递归逻辑对比根节点和val if (root-val val) return searchBST(root-left, val); // val较小在左边子树 if (root-val val) return searchBST(root-right, val); // val较大在右边子树// 1.返回值return NULL;} };// 前序遍历迭代法创建二叉树每次迭代将容器首元素弹出弹出代码还可以再优化 void Tree_Generator(vectorstring t, TreeNode* node) {if (!t.size() || t[0] NULL) return; // 退出条件else {node new TreeNode(stoi(t[0].c_str())); // 中if (t.size()) {t.assign(t.begin() 1, t.end());Tree_Generator(t, node-left); // 左}if (t.size()) {t.assign(t.begin() 1, t.end());Tree_Generator(t, node-right); // 右}} }templatetypename T void my_print(T v, const string msg) {cout msg endl;for (class T::iterator it v.begin(); it ! v.end(); it) {cout *it ;}cout endl; }templateclass T1, class T2 void my_print2(T1 v, const string str) {cout str endl;for (class T1::iterator vit v.begin(); vit v.end(); vit) {for (class T2::iterator it (*vit).begin(); it (*vit).end(); it) {cout *it ;}cout endl;} }// 层序遍历 vectorvectorint levelOrder(TreeNode* root) {queueTreeNode* que;if (root ! NULL) que.push(root);vectorvectorint result;while (!que.empty()) {int size que.size(); // size必须固定, que.size()是不断变化的vectorint vec;for (int i 0; i size; i) {TreeNode* node que.front();que.pop();vec.push_back(node-val);if (node-left) que.push(node-left);if (node-right) que.push(node-right);}result.push_back(vec);}return result; }int main() {vectorstring t1 { 4, 2, 1, NULL, NULL, 3, NULL, NULL, 7, NULL, NULL }; // 前序遍历my_print(t1, 目标树);TreeNode* root1 new TreeNode();Tree_Generator(t1, root1);vectorvectorint tree1 levelOrder(root1);my_print2vectorvectorint, vectorint(tree1, 目标树:);Solution s;int val 2;TreeNode* root s.searchBST(root1, val);vectorvectorint tree levelOrder(root);my_print2vectorvectorint, vectorint(tree, 目标树:);system(pause);return 0; }end
http://www.w-s-a.com/news/176748/

相关文章:

  • 哔哩哔哩网站建设分析有哪些做网站好的公司
  • 福建建设执业中心网站沧州网络推广外包公司
  • 做网站怎么改关键词营销网站建设818gx
  • 广撒网网站怎么进行网络营销
  • 中职计算机网站建设教学计划电商网站如何避免客户信息泄露
  • 惠州微网站建设外贸进出口代理公司
  • 网站建设最常见的问题建设银行网站机构
  • 网站集群建设相关的招标南通seo网站建设费用
  • 网络培训的网站建设能够做二维码网站
  • 网站类游戏网站开发wordpress 文章首标点
  • 徐州网站建设熊掌号免费推广网站入口2020
  • 网站建设有前途长春高铁站
  • 做网站网课阿里云域名查询系统
  • saas建站平台有哪些简述网站建设基本流程答案
  • 个人怎么做网站网站浏览思路
  • 网站建设里的知识长沙网络营销公司
  • 网站建设与维护大作业pc网站转换成微网站
  • php网站开发经典教材东莞网站开发
  • 教育培训手机网站模板下载跨境电商培训哪家最好
  • 网站开发淄博网站被降权会发生什么影响吗
  • 网站开发常用的语言东城手机网站制作
  • 微小店网站建设平台手机优化加速有什么用
  • 沈阳酒店企业网站制作公司竞价网站怎么做seo
  • 中山企业网站多少钱学网站建设的好处
  • 做官网网站哪家公司好jianux wordpress
  • 插件素材网站新站seo优化快速上排名
  • 网站注销主体填写原因asp响应式h5网站源码下载
  • 电商类网站模板下载济南市建设网官网
  • 万户网络做网站如何采集器wordpress
  • 襄阳网站建设企业查看 wordpress 插件