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

深圳网站搜索怎么做网页超链接

深圳网站搜索,怎么做网页超链接,高校信息化建设 网站,软件项目管理课程二叉树展开为链表 理解题意#xff1a;前序遍历的N种写法题解1 前序遍历题解2 反前序遍历(代码简洁)题解3 类似旋转的方法题解4 迭代题解5 同时遍历改左右子树 给你二叉树的根结点 root #xff0c;请你将它展开为一个单链表#xff1a; 展开后的单链表应该同样使用 TreeNo… 二叉树展开为链表 理解题意前序遍历的N种写法题解1 前序遍历题解2 反前序遍历(代码简洁)题解3 类似旋转的方法题解4 迭代题解5 同时遍历改左右子树 给你二叉树的根结点 root 请你将它展开为一个单链表 展开后的单链表应该同样使用 TreeNode 其中 right 子指针指向链表中下一个结点而左子指针始终为 null 。 展开后的单链表应该与二叉树先序遍历顺序相同。 提示 树中结点数在范围 [0, 2000] 内-100 Node.val 100 理解题意前序遍历的N种写法 题解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 {vectorTreeNode* arr; public:void dfs(TreeNode* root){if(! root) return;arr.push_back(root);dfs(root-left);dfs(root-right);} void flatten(TreeNode* root) {if(! root) return;dfs(root);for(int i 1; i arr.size(); i){root-right arr[i];root-left nullptr;root root-right;}} };题解2 反前序遍历(代码简洁) class Solution {TreeNode* preNode; public:void flatten(TreeNode* root) {if (! root) return;// right先压栈后面弹flatten(root-right);flatten(root-left);// 第一次执行 root是前序遍历的最后访问的结点root-left NULL;root-right preNode;preNode root;} };题解3 类似旋转的方法 class Solution {TreeNode* preNode; public:void flatten(TreeNode* root) {TreeNode *curr root;while (curr ! nullptr) {if (curr-left ! nullptr) {auto next curr-left;auto predecessor next;while (predecessor-right ! nullptr) {predecessor predecessor-right;}predecessor-right curr-right;curr-left nullptr;curr-right next;}curr curr-right;}} };题解4 迭代 class Solution {TreeNode* preNode; public:void flatten(TreeNode* root) {auto v vectorTreeNode*();auto stk stackTreeNode*();TreeNode *node root;while (node ! nullptr || !stk.empty()) {while (node ! nullptr) {// 前序遍历 动作放在最前面v.push_back(node);stk.push(node);node node-left;}node stk.top(); stk.pop();node node-right;}int size v.size();for (int i 1; i size; i) {auto prev v.at(i - 1), curr v.at(i);prev-left nullptr;prev-right curr;}} };题解5 同时遍历改左右子树 void flatten(TreeNode* root) {if (root nullptr) {return;}auto stk stackTreeNode*();stk.push(root);TreeNode *prev nullptr;while (!stk.empty()) {TreeNode *curr stk.top(); stk.pop();if (prev ! nullptr) {prev-left nullptr;prev-right curr;}TreeNode *left curr-left, *right curr-right;// 防止脏数据原数据先放进stack里if (right ! nullptr) {stk.push(right);}if (left ! nullptr) {stk.push(left);}//迭代prev curr;}}
http://wiki.neutronadmin.com/news/95490/

相关文章:

  • 珠海营销营网站建设射击官网
  • 网站开发搭建成都网站建设服务
  • 哪个网站能买到做披萨的芝士正宗wild合成版是哪个网站做的
  • 奖券世界推广网站wordpress edd支付宝
  • 西安自助建站系统别人用我的备案信息做网站
  • 微信支付 网站备案票务网站做酒店推荐的目的
  • 烟台免费做网站dw制作电商网页
  • 网站设计说明范文北京软件开发年薪
  • 做网站域名备案需要多久wordpress 谷歌地图
  • php做视频分享网站成都百度百科推广
  • js网站效果东莞建站网站
  • 鲜花网站建设文档网站缩略图制作
  • 购物网站建设的思路中铁四局建筑公司网站
  • 宁波网站建设制作公司排名安庆网站优化
  • 网站开发在哪个科目核算长春seo结算
  • 做整个网站静态页面多少钱兰州专业网站建设公司哪家好
  • 如何建立网站做微商论坛制作
  • 男女做爰高清免费网站百度怎么投放广告
  • 如何防止网站被注册网站推他网站
  • 开发php网站开发温州在线课堂
  • php能开发大型网站dedecms 门户网站
  • 网站 推广方案wordpress文章在新窗口打开
  • 银行网站建设公司建设网站准备资料
  • 长沙百度网站建设网站建设策划有哪些
  • 做网站有什么必要济南网站建设推荐企优互联不错
  • 秦皇岛哪有网站优化公司手工制作书签简单漂亮
  • 南宁网站开发制作朝阳区网站建设公司
  • 电脑建站软件秦皇岛住建部官网
  • 赤壁网站设计江西网站开发的公司
  • 有没有做淘宝首页特效的网站wordpress插件音乐