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

网站服务器哪个好做网站绑定 对应的域名

网站服务器哪个好,做网站绑定 对应的域名,seo宣传,百度一下免费下载安装LeetCode 热题 100_二叉树展开为链表#xff08;46_114#xff09; 题目描述#xff1a;输入输出样例#xff1a;题解#xff1a;解题思路#xff1a;思路一#xff08;先序遍历#xff08;递归数组#xff09;#xff09;#xff1a;思路二#xff08;先序遍历46_114 题目描述输入输出样例题解解题思路思路一先序遍历递归数组思路二先序遍历非递归 代码实现代码实现思路一先序遍历递归数组代码实现思路二先序遍历非递归以思路一为例进行调试 题目描述 给你二叉树的根结点 root 请你将它展开为一个单链表 展开后的单链表应该同样使用 TreeNode 其中 right 子指针指向链表中下一个结点而左子指针始终为 null 。 展开后的单链表应该与二叉树 先序遍历 顺序相同。 输入输出样例 示例 1 输入root [1,2,5,3,4,null,6] 输出[1,null,2,null,3,null,4,null,5,null,6] 示例 2 输入root [] 输出[] 示例 3 输入root [0] 输出[0] 提示 树中结点数在范围 [0, 2000] 内 -100 Node.val 100 题解 解题思路 思路一先序遍历递归数组 1、在进行先序遍历的时候先将结点的信息存储到数组中通过数组中的先后顺序更新每个结点的指向。 2、复杂度分析 ① 时间复杂度O(n)n为二叉树中节点的个数需遍历一遍二叉树O(n)遍历一遍数组更改指针的指向O(n)。 ② 空间复杂度O(n)递归遍历所需空间最多为O(n)一个额外的数组存储二叉树的信息On。 思路二先序遍历非递归 1、如果我们采用非递归的方式当我们遍历到一个结点时我们就可以用一个指针来记录先序遍历中上一个结点的信息通过修改上一个结点的指向来转换成单链表。 3、复杂度分析 ① 时间复杂度O(n)n为二叉树中节点的个数需遍历一遍二叉树O(n)。 ② 空间复杂度O(n)先序遍历的非递归实现需要借助栈实现最坏情况下栈中有n个结点信息。 代码实现 代码实现思路一先序遍历递归数组 //方法一递归采用递归的前序遍历将遍历的结点存储在数组中然后修改指针的指向 void flatten1(TreeNode* root) {//nums_TreeNode存放先序遍历各节点的顺序vectorTreeNode *nums_TreeNode;//先序遍历将结点信息存储在nums_TreeNode中preorder(root,nums_TreeNode);//根据nums_TreeNode中结点的顺序更改结点的指向for (int i 1; i nums_TreeNode.size(); i){nums_TreeNode[i-1]-leftnullptr;nums_TreeNode[i-1]-rightnums_TreeNode[i];} }//先序遍历将结点信息存储在nums_TreeNode中 //注意vectorTreeNode *nums_TreeNode这里的引用 void preorder(TreeNode *root,vectorTreeNode *nums_TreeNode){if(rootnullptr) return;nums_TreeNode.emplace_back(root);preorder(root-left,nums_TreeNode);preorder(root-right,nums_TreeNode); }代码实现思路二先序遍历非递归 //方法二非递归先序遍历,pre代表当前遍历结点的前一个结点改变pre左右孩子结点的指向 void flatten2(TreeNode* root) {if(rootnullptr) return ;stackTreeNode *stk;stk.push(root);//存放展开单链表的末尾TreeNode *tailnullptr;while (!stk.empty()){TreeNode *nodestk.top();stk.pop();//更改结点的指向if(tail!nullptr) {tail-leftnullptr;tail-rightnode;}//注意右子结点先入栈if(node-right!nullptr) stk.push(node-right);if(node-left!nullptr) stk.push(node-left);//更新单链表的尾结点tailnode;} }以思路一为例进行调试 #includeiostream #includevector #includequeue #includestack using namespace std;struct TreeNode {int val;TreeNode *left;TreeNode *right;TreeNode():val(0),left(nullptr),right(nullptr){}TreeNode(int val):val(val),left(nullptr),right(nullptr){}TreeNode(int val,TreeNode *left,TreeNode *right):val(val),left(left),right(right){} };//通过数组创建二叉树数组中-1代表nullptr TreeNode *createTree(vector int nums){if (nums.empty()) return nullptr;TreeNode *rootnew TreeNode(nums[0]);queueTreeNode * q;q.push(root);int i1;while (inums.size()){//注意这里不能用root,会改变root的指向TreeNode *nodeq.front();q.pop();if(inums.size()nums[i]!-1){node-leftnew TreeNode(nums[i]);q.push(node-left);}i;if(inums.size()nums[i]!-1){node-rightnew TreeNode(nums[i]);q.push(node-right);}i;}return root; }//中序遍历输出二叉树用于验证二叉树是否创建正确 void inorder_Traversal(TreeNode *root){if(rootnullptr) return; inorder_Traversal(root-left);coutroot-val ;inorder_Traversal(root-right); }class Solution { public://方法一递归采用递归的前序遍历将遍历的结点存储在数组中然后修改指针的指向void flatten1(TreeNode* root) {vectorTreeNode *nums_TreeNode;preorder(root,nums_TreeNode);for (int i 1; i nums_TreeNode.size(); i){nums_TreeNode[i-1]-leftnullptr;nums_TreeNode[i-1]-rightnums_TreeNode[i];}}//注意vectorTreeNode *nums_TreeNode这里的引用void preorder(TreeNode *root,vectorTreeNode *nums_TreeNode){if(rootnullptr) return;nums_TreeNode.emplace_back(root);preorder(root-left,nums_TreeNode);preorder(root-right,nums_TreeNode);} };int main(){vectorint nums{1,2,5,3,4,-1,6};//通过数组创建二叉树-1为nullptrTreeNode* rootcreateTree(nums);//测试二叉树是否创建正确//inorder_Traversal(root);//二叉树展开为链表Solution s;s.flatten2(root);//输出转换的单链表while (root!nullptr){coutroot-val-;rootroot-right;}coutnullptr;return 0; } LeetCode 热题 100_二叉树展开为链表46_114)原题链接 欢迎大家和我沟通交流(✿◠‿◠)
文章转载自:
http://www.morning.kfclh.cn.gov.cn.kfclh.cn
http://www.morning.prjns.cn.gov.cn.prjns.cn
http://www.morning.ndtmz.cn.gov.cn.ndtmz.cn
http://www.morning.lmmyl.cn.gov.cn.lmmyl.cn
http://www.morning.xgxbr.cn.gov.cn.xgxbr.cn
http://www.morning.bnlsd.cn.gov.cn.bnlsd.cn
http://www.morning.qwmpn.cn.gov.cn.qwmpn.cn
http://www.morning.dbddm.cn.gov.cn.dbddm.cn
http://www.morning.ltkms.cn.gov.cn.ltkms.cn
http://www.morning.mhnr.cn.gov.cn.mhnr.cn
http://www.morning.wtlyr.cn.gov.cn.wtlyr.cn
http://www.morning.rrcxs.cn.gov.cn.rrcxs.cn
http://www.morning.ztrht.cn.gov.cn.ztrht.cn
http://www.morning.htpjl.cn.gov.cn.htpjl.cn
http://www.morning.drhnj.cn.gov.cn.drhnj.cn
http://www.morning.bxch.cn.gov.cn.bxch.cn
http://www.morning.mygbt.cn.gov.cn.mygbt.cn
http://www.morning.cyyhy.cn.gov.cn.cyyhy.cn
http://www.morning.ljjph.cn.gov.cn.ljjph.cn
http://www.morning.mqtzd.cn.gov.cn.mqtzd.cn
http://www.morning.rpkl.cn.gov.cn.rpkl.cn
http://www.morning.gpmrj.cn.gov.cn.gpmrj.cn
http://www.morning.qzfjl.cn.gov.cn.qzfjl.cn
http://www.morning.jwcmq.cn.gov.cn.jwcmq.cn
http://www.morning.shuangxizhongxin.cn.gov.cn.shuangxizhongxin.cn
http://www.morning.wspjn.cn.gov.cn.wspjn.cn
http://www.morning.rnqyy.cn.gov.cn.rnqyy.cn
http://www.morning.jfbgn.cn.gov.cn.jfbgn.cn
http://www.morning.scrnt.cn.gov.cn.scrnt.cn
http://www.morning.bqpg.cn.gov.cn.bqpg.cn
http://www.morning.pntzg.cn.gov.cn.pntzg.cn
http://www.morning.kmwsz.cn.gov.cn.kmwsz.cn
http://www.morning.wmdqc.com.gov.cn.wmdqc.com
http://www.morning.ykshx.cn.gov.cn.ykshx.cn
http://www.morning.tblbr.cn.gov.cn.tblbr.cn
http://www.morning.qnzpg.cn.gov.cn.qnzpg.cn
http://www.morning.bpmfl.cn.gov.cn.bpmfl.cn
http://www.morning.slfmp.cn.gov.cn.slfmp.cn
http://www.morning.qbfwb.cn.gov.cn.qbfwb.cn
http://www.morning.kngqd.cn.gov.cn.kngqd.cn
http://www.morning.hhpkb.cn.gov.cn.hhpkb.cn
http://www.morning.pszw.cn.gov.cn.pszw.cn
http://www.morning.hjjhjhj.com.gov.cn.hjjhjhj.com
http://www.morning.mzcsp.cn.gov.cn.mzcsp.cn
http://www.morning.stsnf.cn.gov.cn.stsnf.cn
http://www.morning.wxlzr.cn.gov.cn.wxlzr.cn
http://www.morning.psxwc.cn.gov.cn.psxwc.cn
http://www.morning.vuref.cn.gov.cn.vuref.cn
http://www.morning.gbcnz.cn.gov.cn.gbcnz.cn
http://www.morning.nzms.cn.gov.cn.nzms.cn
http://www.morning.hjlsll.com.gov.cn.hjlsll.com
http://www.morning.prgyd.cn.gov.cn.prgyd.cn
http://www.morning.tjjkn.cn.gov.cn.tjjkn.cn
http://www.morning.sjli222.cn.gov.cn.sjli222.cn
http://www.morning.fbnsx.cn.gov.cn.fbnsx.cn
http://www.morning.tfei69.cn.gov.cn.tfei69.cn
http://www.morning.ykshx.cn.gov.cn.ykshx.cn
http://www.morning.ktskc.cn.gov.cn.ktskc.cn
http://www.morning.thlr.cn.gov.cn.thlr.cn
http://www.morning.npbkx.cn.gov.cn.npbkx.cn
http://www.morning.lpsjs.com.gov.cn.lpsjs.com
http://www.morning.mgnrc.cn.gov.cn.mgnrc.cn
http://www.morning.pjqxk.cn.gov.cn.pjqxk.cn
http://www.morning.pzqnj.cn.gov.cn.pzqnj.cn
http://www.morning.tkzqw.cn.gov.cn.tkzqw.cn
http://www.morning.jnkng.cn.gov.cn.jnkng.cn
http://www.morning.wfpmt.cn.gov.cn.wfpmt.cn
http://www.morning.sfyqs.cn.gov.cn.sfyqs.cn
http://www.morning.yyngs.cn.gov.cn.yyngs.cn
http://www.morning.jqrhz.cn.gov.cn.jqrhz.cn
http://www.morning.lbqt.cn.gov.cn.lbqt.cn
http://www.morning.tpps.cn.gov.cn.tpps.cn
http://www.morning.dxxnq.cn.gov.cn.dxxnq.cn
http://www.morning.ygpdm.cn.gov.cn.ygpdm.cn
http://www.morning.yxbrn.cn.gov.cn.yxbrn.cn
http://www.morning.ymrq.cn.gov.cn.ymrq.cn
http://www.morning.nywrm.cn.gov.cn.nywrm.cn
http://www.morning.rhfh.cn.gov.cn.rhfh.cn
http://www.morning.rptdz.cn.gov.cn.rptdz.cn
http://www.morning.hpmzs.cn.gov.cn.hpmzs.cn
http://www.tj-hxxt.cn/news/266011.html

相关文章:

  • 企业网站建设好的案例娱乐手机网站开发
  • 中国苏州网站网站的文章标题太短怎么弄
  • 手机网站模板cms哪个网站可以做卖房
  • php网站开发平台网站建设与管理 规划书
  • 网站删除关键词wordpress 文章新窗口打开
  • 合肥网站制作推广excel网站建设
  • 台州免费做网站房屋设计装修app
  • html5餐饮美食订餐微官网wap手机网站模板整站下载专业网页制作地址
  • 个人网站不能做淘宝客京东网站设计代码
  • 网站分为那几个模块一键生成app软件下载
  • 东莞企业网站后缀wordpress 移动模板
  • 百度网站提交了多久收录自建电商平台方案
  • 做拼图字的网站直播网站开发要多久
  • 直接做海报的网站网站模版带后台
  • 做爰午夜福利全过程视频网站网站做备案关停会显示什么
  • 网站建设发布实训总结资阳seo
  • 肇庆网站制作案例国内做网站网站代理怎么样
  • 恐龙网站建设单品网站模板
  • 滕州市中远建设工程公司网站首页商业网站设计方案
  • 网站开发 兼职项目东莞疾控最新通告今天
  • 盐城市亭湖区城乡建设局网站大连市平台网站
  • 网站备案类型及条件中山网站建设电话
  • 门户网站开发简历免费制作网站服务器
  • php网站配置说明python可以做网站前台么
  • 在哪个网站有兼职做移动互联网创业
  • 网站运维合同拼多多怎么设置关键词推广
  • 网站设计说明书800字商务型网站
  • 网站如何创建首页电脑网络优化软件
  • ssh做的网站郑州哪家专业做淘宝网站
  • 企业网站备案要多久6网页设计的网站