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

week3

 题解:

前序遍历性质: 节点按照 [ 根节点 | 左子树 | 右子树 ] 排序。

中序遍历性质: 节点按照 [ 左子树 | 根节点 | 右子树 ] 排序。

通过以上三步,可确定 三个节点 :1.树的根节点、2.左子树根节点、3.右子树根节点。

之后进行递归运算

class Solution {
public:TreeNode* buildTree(vector<int>& preorder, vector<int>& inorder) {this->preorder = preorder;for(int i = 0; i < inorder.size(); i++)dic[inorder[i]] = i;return recur(0, 0, inorder.size() - 1);}
private:vector<int> preorder;unordered_map<int, int> dic;TreeNode* recur(int root, int left, int right) { if(left > right) return nullptr;                        TreeNode* node = new TreeNode(preorder[root]);          int i = dic[preorder[root]];                            node->left = recur(root + 1, left, i - 1);              node->right = recur(root + i - left + 1, i + 1, right); return node;                                            }
};

 题解:

只使用一个栈 stack1 当作队列,另一个栈 stack2 用来辅助操作。

要想将新加入的元素出现栈底,需要先将 stack1 的元素转移到 stack2,将元素入栈 stack1,最后将 stack2 的元素全部回到 stack1。

class CQueue {
public:stack<int> stack1;stack<int> stack2;CQueue() {}void appendTail(int value) {stack1.push(value);}int deleteHead() {if (stack1.empty()) return -1;while (!stack1.empty()){ // 1 -> 2int tmp = stack1.top();stack1.pop();stack2.push(tmp);}// delete headint res = stack2.top();stack2.pop();while (!stack2.empty()){ // 1 <- 2int temp = stack2.top();stack2.pop();stack1.push(temp);}return res;}
};

相关文章:

week3

题解: 前序遍历性质&#xff1a; 节点按照 [ 根节点 | 左子树 | 右子树 ] 排序。 中序遍历性质&#xff1a; 节点按照 [ 左子树 | 根节点 | 右子树 ] 排序。 通过以上三步&#xff0c;可确定 三个节点 &#xff1a;1.树的根节点、2.左子树根节点、3.右子树根节点。 之后进行…...

LeetCode28.找出字符串中第一个匹配项的下标

28.找出字符串中第一个匹配项的下标 目录 28.找出字符串中第一个匹配项的下标题目描述解法一&#xff1a;朴素的模式匹配解法二&#xff1a;KMP算法KMP解决的问题类型最长公共前后缀KMP算法过程next数组的构建代码实现 题目描述 给你两个字符串haystack和needle&#xff0c;请…...

爬虫009_字符串高级_替换_去空格_分割_取长度_统计字符_间隔插入---python工作笔记028

然后再来看字符串的高级操作 取长度 查找字符串下标位置 判断是否以某个字符,开头结尾 计算字符出现次数 替换...

Windows 安装Tensorflow2.1、Pycharm开发环境

文章目录 1、安装anaconda2、安装Tensoflow2.1、创建虚拟环境2.2、安装Tensorflow依赖2.3、验证Tensorflow是否成功 3、配置pycharm环境4、错误记录 1、安装anaconda https://www.anaconda.com/download 打开命令行工具&#xff0c;出现base就表示安装成功了&#xff0c;表示当…...

【javaScript】数组的常用方法(自用记忆版)

目录 一、操作方法 增 push() unshift() splice() concat() 删 pop() shift() splice() slice() 改 splice() 查 indexOf() includes() find() 二、排序方法 reverse() sort() 三、转换方法 join() ​​​​​​四、迭代方法 some() every() forEach…...

全新二开美化版UI好看的社区源码下载/反编译版

2023全新二开美化版UI精美的社区源码下载/反编译版 之前我分享过Rule原版&#xff0c;相信大家已经有很多人搭建好了。这次我要分享的是RuleAPP的二开美化版&#xff08;请尊重每个作者的版权&#xff09;&#xff0c;这个版本没有加密&#xff0c;可以进行反编译&#xff0c;…...

Docker 发布一个springboot项目

文章目录 1、新建SpringBootDemo项目并打包2、使用Dockerfile打包&#xff08;基础用法&#xff09;进一步maven源码打包法 3、更进一步&#xff08;maven插件打包&#xff09;docker-maven-pluginspring-boot-maven-plugin前提条件本地环境配置项目环境配置maven插件打包运行校…...

办公信息系统安全基本技术要求

范围 本标准规定了办公信息系统的安全基本技术要求。 本标准适用于指导党政部门的办公信息系统建设&#xff0c;包括在系统设计、产品采购、系统集成等方面应遵循的基本原则&#xff0c;以及应满足的基本技术要求。涉密办公信息系统的建设管理应依据相关国家保密法规和标准要…...

有效管理IT问题的5个原则

问题管理就是发现未知的、隐藏的问题&#xff0c;这是根本原因&#xff0c; 这是您 IT 帮助台无穷无尽的工单来源。当您实施有效的 问题管理&#xff0c;您的 IT 团队可以超越消防模式&#xff0c;专注于战略 IT 目标。以下是可以帮助您实现一流问题管理的五个原则&#xff1a;…...

【MongoDB】解决ProxmoxVE下CentOS7虚拟机安装MongoDB6后启动失败的问题

目录 安装步骤: 2.1 配置yum源 2.2 安装MongoDB 2.3 启 动MongoDB ProxmoxVE上新装的CentOS7.4虚拟机,安装MongoDB6。 安装步骤: 2.1 配置yum源 # 创建mongodb yum源(https://www.mongodb.co...

MySQL 事务原理:事务概述、隔离级别、MVCC

文章目录 一、事务1.1 事务概述1.2 事务控制语句1.3 ACID特性 二、隔离级别2.1 隔离级别的分类2.1.1 读未提交&#xff08;RU&#xff09;2.1.2 读已提交&#xff08;RC&#xff09;2.1.3 可重复读&#xff08;RR&#xff09;2.1.4 串行化 2.2 命令2.3 并发读异常2.3.1 脏读2.3…...

useEffect从入门到入土

副作用是相对于纯函数概念来说的&#xff0c; 除事件回调处理副作用&#xff0c;其他副作用尽量放在useEffect中&#xff1b; 组件首次渲染、有依赖项更新&#xff08;Object.is方法判断&#xff09;时&#xff0c;该useEffect触发 jsx渲染完成后立马触发useEffect&#xff…...

第三章 图论 No.6负环之01分数规划与特殊建图方式

文章目录 裸题&#xff1a;904. 虫洞01分数规划&#xff1a;361. 观光奶牛特殊建图与01分数规划trick&#xff1a;1165. 单词环 裸题&#xff1a;904. 虫洞 904. 虫洞 - AcWing题库 // 虫洞是负权且单向边&#xff0c;道路是正权且双向边&#xff0c;题目较裸&#xff0c;判…...

九、Spring 声明式事务学习总结

文章目录 一、声明式事务1.1 什么是事务1.2 事务的应用场景1.3 事务的特性&#xff08;ACID&#xff09;1.4 未使用事务的代码示例1.5 配置 Spring 声明式事务学习总结 一、声明式事务 1.1 什么是事务 把一组业务当成一个业务来做&#xff1b;要么都成功&#xff0c;要么都失败…...

ResNet50卷积神经网络输出数据形参分析-笔记

ResNet50卷积神经网络输出数据形参分析-笔记 ResNet50包含多个模块&#xff0c;其中第2到第5个模块分别包含3、4、6、3个残差块 5049个卷积&#xff08;3463)*31和一个全连接层 分析结果为&#xff1a; 输入数据形状:[10, 3, 224, 224] 最后输出结果&#xff1a;linear_0 [10,…...

uniapp 微信小程序 封装公共的请求js(api版本)

一、新建api文件夹 在项目目录下创建api文件夹&#xff0c;内放files跟index.js文件夹&#xff0c;files文件夹内放每个页面对应的js请求接口 1、index.js /*** api接口的统一出口*/ const api {}; const requireComponent require.context(./files, false, /\.js$/) requi…...

格式化后数据恢复,教你3个实用方法!

“格式化后数据还能恢复吗&#xff1f;前几天因为我的电脑中了病毒&#xff0c;我不得不将它进行格式化操作。但是我电脑里有很多比较重要的文件&#xff0c;有什么方法可以帮我恢复电脑中的文件吗&#xff1f;求解答&#xff01;” 格式化是一种比较常见的数据清除方法&#x…...

LaTex使用技巧21:设置中文环境、字体、行间距和页边距

我在Overleaf上编写我的中文LaTex&#xff0c;设置了中文环境&#xff0c;字体、行间距以及页间距&#xff0c;记录一下方便以后查询。 使用中文环境命令为&#xff1a; \usepackage{xeCJK}可以使用Overleaf上支持的中文字体Fonts for CJK Chinese&#xff0c;设置字体的命令…...

【RabbitMQ】golang客户端教程3——发布订阅(使用fanout交换器)

发布订阅 在上一个教程中&#xff0c;我们创建了一个工作队列。工作队列背后的假设是每个任务只传递给一个工人。在这一部分中&#xff0c;我们将做一些完全不同的事情——我们将向多个消费者传递一个消息。这就是所谓的“订阅/发布模式”。 为了说明这种模式&#xff0c;我们…...

图像处理学习笔记

图像处理的流程&#xff1a;获取图像-分割区域-特征提取。 嵌入式工业读码器 &#xff1a;包括DM码、QR码、vericode码 Blob分析与形态学 1.Blob区域是Blobs这一数据类型在halcon中的一种贴切的表达形式。 采集图像-区域分割&#xff0c;最后通过特征&#xff08;如圆度、面积、…...

StarRocks BE启动失败?别急着查网络,先看看你的CPU是不是AVX2指令集

StarRocks BE启动失败&#xff1f;可能是你的CPU在拖后腿 当你兴冲冲地准备部署StarRocks&#xff0c;却发现BE进程像幽灵一样启动即消失&#xff0c;日志文件也神秘失踪&#xff0c;这种挫败感我深有体会。大多数人的第一反应是检查网络配置或服务端口&#xff0c;但今天我要带…...

开源AI中间人代理工具深度解析:从MITM原理到AI API调试实践

1. 项目概述&#xff1a;一个开源中间人代理工具的深度解析最近在开源社区里&#xff0c;一个名为nsampre/openclaw-anthropic-mitm的项目引起了我的注意。光看这个标题&#xff0c;可能很多朋友会有点懵&#xff0c;这串字符组合到底意味着什么&#xff1f;简单来说&#xff0…...

ESP32+LVGL8.3保姆级教程:搞定ST7789V屏幕和CST816T触摸(附完整代码)

ESP32LVGL8.3实战指南&#xff1a;ST7789V屏幕与CST816T触摸的深度适配 当一块240x280分辨率的ST7789V屏幕与CST816T触摸芯片组合遇到ESP32开发板&#xff0c;如何让LVGL8.3图形库完美驱动这套硬件&#xff1f;本文将带你从零开始&#xff0c;穿越配置迷宫&#xff0c;解决色彩…...

企业AI Agent安全防护体系

企业AI Agent安全防护体系:构建智能时代的安全长城 前言:智能革命与安全挑战 当我们站在21世纪第三个十年的门槛上回望,人工智能(AI)的发展速度可谓惊人。从早期的专家系统到今天的大语言模型(LLM),AI已经从实验室走向了企业生产的核心。而在这一波浪潮中,AI Agent(…...

解密Ryujinx:5个核心技术原理让你理解现代游戏模拟器的设计哲学

解密Ryujinx&#xff1a;5个核心技术原理让你理解现代游戏模拟器的设计哲学 【免费下载链接】Ryujinx 用 C# 编写的实验性 Nintendo Switch 模拟器 项目地址: https://gitcode.com/GitHub_Trending/ry/Ryujinx Ryujinx作为一款基于C#开发的Nintendo Switch模拟器&#x…...

本地大模型一站式图形化工具Hermes-Studio部署与调优指南

1. 项目概述与核心价值最近在折腾本地大模型应用开发时&#xff0c;发现了一个挺有意思的项目&#xff0c;叫 Hermes-Studio。乍一看这个名字&#xff0c;你可能以为是某个新的IDE或者设计工具&#xff0c;但实际上&#xff0c;它是一个专门为本地运行的大型语言模型&#xff0…...

2026届最火的十大降AI率神器解析与推荐

Ai论文网站排名&#xff08;开题报告、文献综述、降aigc率、降重综合对比&#xff09; TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 人工智能生成内容也就是 AIGC 技术迅猛发展着&#xff0c;其在学术领域的应用引发着深刻变革…...

TI毫米波雷达IWR/AWR1642 L3 RAM内存优化实战:从原理到配置

1. 项目概述&#xff1a;为何要动L3 RAM这块“蛋糕”&#xff1f;如果你正在基于TI的IWR1642或AWR1642毫米波雷达芯片进行开发&#xff0c;尤其是当你的应用代码量越来越大&#xff0c;或者数据处理任务越来越重时&#xff0c;你可能会遇到一个瓶颈&#xff1a;内存不够用了。不…...

Imagine Engine时间线管理:掌握游戏节奏的完整教程 [特殊字符]

Imagine Engine时间线管理&#xff1a;掌握游戏节奏的完整教程 &#x1f3ae; 【免费下载链接】ImagineEngine A project to create a blazingly fast Swift game engine that is a joy to use &#x1f680; 项目地址: https://gitcode.com/gh_mirrors/im/ImagineEngine …...

AI写专著高效途径:选对工具,一键生成20万字专著不是梦!

一、新手研究者撰写学术专著的困境 对于首次尝试撰写学术专著的研究者来说&#xff0c;写作的过程就像是在“摸石头过河”&#xff0c;其中充满了各种未知的障碍。选题上常常感到迷茫&#xff0c;难以在“有意义”与“可行性”之间找到合适的平衡&#xff0c;选题要么过于宏大…...