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

爱站工具seo综合查询/产品推广方案怎么写

爱站工具seo综合查询,产品推广方案怎么写,学习资料黄页网站免费,重庆招聘网站建设力扣刷题记录-二叉树展开为链表 题目描述 给定一个二叉树,原地将它展开为一个单链表。展开后的单链表应该同样使用 TreeNode,其中 right 子指针指向链表中下一个结点,而 left 子指针始终为 null。 解题思路 要将二叉树展开为链表&#xf…

力扣刷题记录-二叉树展开为链表

题目描述

给定一个二叉树,原地将它展开为一个单链表。展开后的单链表应该同样使用 TreeNode,其中 right 子指针指向链表中下一个结点,而 left 子指针始终为 null

解题思路

要将二叉树展开为链表,可以采用前序遍历的方式,将每个节点的左子树插入到右子树的位置,同时将原来的右子树接到左子树的最右节点。

具体步骤如下:

  1. 前序遍历:遍历二叉树的每个节点。
  2. 展开操作
    • 如果当前节点的左子树不为空,找到左子树的最右节点。
    • 将当前节点的右子树接到左子树的最右节点。
    • 将当前节点的左子树移动到右子树的位置,并将左子树置为 null
  3. 递归处理:对每个节点重复上述操作,直到所有节点处理完毕。

代码实现

以下是 C++ 的实现代码:

#include <iostream>struct TreeNode {int val;TreeNode *left;TreeNode *right;TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}
};class Solution {
public:void flatten(TreeNode* root) {if (!root) return;// 展开左子树flatten(root->left);// 展开右子树flatten(root->right);// 保存右子树TreeNode* right = root->right;// 将左子树移到右子树的位置root->right = root->left;root->left = nullptr;// 找到当前右子树的最右节点TreeNode* curr = root;while (curr->right) {curr = curr->right;}// 将原来的右子树接到最右节点curr->right = right;}
};// 辅助函数:打印展开后的链表
void printFlattenedTree(TreeNode* root) {while (root) {std::cout << root->val << " ";root = root->right;}std::cout << std::endl;
}int main() {// 构建示例二叉树TreeNode* root = new TreeNode(1);root->left = new TreeNode(2);root->right = new TreeNode(5);root->left->left = new TreeNode(3);root->left->right = new TreeNode(4);root->right->right = new TreeNode(6);Solution solution;solution.flatten(root);// 打印展开后的链表printFlattenedTree(root);return 0;
}
http://www.whsansanxincailiao.cn/news/30245844.html

相关文章:

  • 织梦 网站版权信息/设计好看的网站
  • 能自己做照片书的有哪些网站/seo优化系统
  • 微信商城平台开发/苏州百度搜索排名优化
  • 深圳公司 网站建设/室内设计师培训班学费多少
  • wordpress4.9优化谷歌/seo扣费系统源码
  • 专门做代工产品的网站/网络营销顾问工作内容
  • 上海公共招聘网新版/seo推广优化工具
  • 商城网站建设服务/搜索引擎优化的主要内容
  • 网页设计制作说明/西安官网seo公司
  • 个人备案可以做盈利网站吗/北京软件开发公司
  • 天津网站建设服务公司/seo工具包括
  • iis 会影响 网站 速度/博客可以做seo吗
  • 日照制作网站/长春网站建设方案报价
  • 马鞍山做网站的/信阳百度推广公司电话
  • wordpress php7.1/优化最狠的手机优化软件
  • 哪些网站需要icp备案/网站制作大概多少钱
  • 杭州手机模板建站/40个免费网站推广平台
  • 连云港市建设银行网站/磁力猫
  • 做网站要会没软件/培训网站官网
  • 自动化毕设题目网站开发/seo点击优化
  • 网站会员系统怎么做/百度竞价推广怎么样才有效果
  • 做网站的图片/怎么建网站平台卖东西
  • 哪些网站是做货源的/长沙网站seo服务
  • 优质的网站建设/长沙seo网站
  • 做网站密云/seo优化的内容有哪些
  • 个人性质的网站备案容易查/seo体系百科
  • 网站建设600元包/建立网站的流程
  • 028网站建设/百度关键词seo公司
  • 泰州网站建设物美价廉/营销一体化平台
  • 昆明seo网站建设/搜索引擎优化seo方案