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

用什么手机软件做网站数据交换平台

用什么手机软件做网站,数据交换平台,什么网站可以做长图攻略,适合个人开发的小程序创意这道题直接用最笨的办法来做的&#xff0c;用递归来做&#xff0c;我们定义一个全局变量vector<int> element&#xff0c;然后使用中序遍历&#xff0c;每当碰到一个非空节点就将其加入到向量中&#xff0c;这样依赖当向量中的元素小于k时&#xff0c;就返回0&#xff0c…


这道题直接用最笨的办法来做的,用递归来做,我们定义一个全局变量vector<int> element,然后使用中序遍历,每当碰到一个非空节点就将其加入到向量中,这样依赖当向量中的元素小于k时,就返回0,否则返回element[k - 1],下面是对应的代码。

/*** Definition for a binary tree node.* 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:vector<int> element{};int kthSmallest(TreeNode* root, int k) {//中序遍历//遇到空节点返回0if(!root) return 0;//左kthSmallest(root -> left, k);//中element.emplace_back(root -> val);//右kthSmallest(root -> right, k);return element.size() >= k ? element[k - 1] : 0;}
};

看了下灵神的题解,他也是用中序遍历来做的,但是没有使用额外的vector,因为vector插入元素也是耗时的,上面的代码可以进一步优化。
由于原函数已经规定了必须要有返回值,所以我们可以自己额外定义一个没有返回值的函数,这里我们可以用lambda函数来实现。这个lambda函数主要实现递归中序遍历二叉搜索树,且可以捕捉到kthSmallest()函数的所有变量的引用,在这个lambda函数中,中间节点先将k值-1,再判断k是否减为0,若减为0则说明已经当前的节点就是所求节点,再用一个全局外部变量接收当前节点的值即可。在遍历结束后直接将这个全局外部变量返回即可。以下是优化过后的代码。

/*** Definition for a binary tree node.* 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:int result;int kthSmallest(TreeNode* root, int k) {auto dfs = [&] (this auto&& dfs, TreeNode* root) -> void{//递归终止条件if(!root || k == 0) return ;//左dfs(root -> left);//中k--;if(k == 0) result = root -> val; //找到节点,记录答案//右dfs(root -> right);};dfs(root);return result;}
};
http://www.dtcms.com/wzjs/327468.html

相关文章:

  • 怎样介绍自己做的网站新媒体培训
  • 网站建设公司排名百度seo是啥意思
  • 北海建设厅网站疫情最新资讯
  • 有哪些做婚品的网站搜索引擎营销成功的案例
  • 做盗版网站 国外服务器东莞外贸推广公司
  • 手册制作百度seo排名优
  • 网站建设潮州seo的方式包括
  • 做网站什么好优秀软文范例
  • 网站开发这行怎么样网店交易平台
  • 网站建设买什么书长尾关键词查询
  • WordPress创建的网站公司广告推广
  • ps做 网站标准尺寸简述搜索引擎的工作原理
  • 做曖免费网站重庆广告公司
  • 网站的做网站公司什么是seo推广
  • 国外web设计网站网络服务商主要包括哪些
  • 网站电子商务平台建设我为什么不建议年轻人做销售
  • 有哪些网站可以做海报网站友情链接购买
  • 群辉服务器做网站经典营销案例
  • 易物网网站建设管理网络推广营销方案免费
  • 十大黄冈网站排行榜宁波网站建设推广平台
  • 鄂尔多斯市网站建设郑州有没有厉害的seo
  • 网站开发可以自学吗网站收录免费咨询
  • 网站建设费用是什么科目百度相册登录入口
  • 阿里云能放企业网站吗seo技术公司
  • 广东手机网站建设价格低网络软文是什么意思
  • 九龙坡网站建设兴安盟新百度县seo快速排名
  • 便宜网站制作百度指数数据分析
  • win10 网站建设软件竞价托管公司排名
  • wordpress主题上传专业网站seo推广
  • 高端的咨询行业网站策划百度怎么优化关键词排名