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

DAY21-二叉树

LeetCode538.把二叉搜索树转换为累加树

    public TreeNode convertBST(TreeNode root) {reverseIn(root);return root;}public Integer value=0,flag=0;public void reverseIn(TreeNode root) {if(root==null) return ;reverseIn(root.right);if(flag==0) {value=root.val;flag=1;}else {value+=root.val;root.val=value;}reverseIn(root.left);}

LeetCode108.将有序数组转换为二叉搜索树

    public TreeNode sortedArrayToBST(int[] nums) {return builder(nums,0,nums.length-1);}public TreeNode builder(int[]nums,int start,int end) {if(end<start) return null;if(start==end) return new TreeNode(nums[start]);int min = (end+start)/2;TreeNode root = new TreeNode(nums[min]);root.left=builder(nums,start,min-1);root.right=builder(nums,min+1,end);return root;}

LeetCode669.修剪二叉搜索树

	public TreeNode deleteNode(TreeNode root, int key) {// root为空情况if (root == null) return null;// 如果要删除的节点是根节点,并且只有一个孩子或者没有孩子if (root.val == key) {if (root.left == null) return root.right;if (root.right == null) return root.left;// 找到右子树的最左节点TreeNode minRight = root.right;while (minRight.left != null) {minRight = minRight.left;}minRight.left = root.left;return root.right;}// 保存根节点TreeNode head = root;TreeNode temp = root;// 找到要删除的节点while (root != null && root.val != key) {temp = root;if (root.val > key) {root = root.left;} else {root = root.right;}}// 不存在 key 节点if (root == null) return head;// 删除节点if (root.left == null && root.right == null) {if (temp.left == root) {temp.left = null;} else {temp.right = null;}} else if (root.left == null) {if (temp.left == root) {temp.left = root.right;} else {temp.right = root.right;}} else if (root.right == null) {if (temp.left == root) {temp.left = root.left;} else {temp.right = root.left;}} else {TreeNode minRight = root.right;while (minRight.left != null) {minRight = minRight.left;}minRight.left = root.left;if (temp.left == root) {temp.left = root.right;} else {temp.right = root.right;}}return head;}public TreeNode trimBST(TreeNode root, int low, int high) {head=root;in(root,low,high);return head;}public TreeNode head = null;public void in(TreeNode root,int low,int high) {if(root==null) return;in(root.left,low,high);if(root.val<low||root.val>high) {head = deleteNode(head, root.val);}in(root.right,low,high);}

相关文章:

DAY21-二叉树

LeetCode538.把二叉搜索树转换为累加树 public TreeNode convertBST(TreeNode root) {reverseIn(root);return root;}public Integer value0,flag0;public void reverseIn(TreeNode root) {if(rootnull) return ;reverseIn(root.right);if(flag0) {valueroot.val;flag1;}else {…...

java面试-场景题

一、集合 1. java中如何给一个超大的一个亿左右的list数据去重&#xff1f; 我当时的回答是使用HashSet或Stream流的distinct语法。但是面试官好像更注重内存的消耗问题。 使用HashSet&#xff1a; HashSet 是一个不允许有重复元素的集合。你可以将List中的元素添加到HashSe…...

【TORCH】matplotlib绘制一条横线的两种方法

在创建图形和数据可视化时&#xff0c;你提到的两种方法都用于绘制特定的线条&#xff0c;但它们在实现方式上有所不同。我将逐一解释这两种方法的具体含义和用途。 1. 使用列表创建常数值的线条 y [1] * len(x)这行代码生成了一个列表 y&#xff0c;其长度与 x 相同&#x…...

深入浅出mediasoup—WebRtcTransport

mediasoup 提供了多种 transport&#xff0c;包括 WebRtcTransport、PipeTransport、DirectTransport、PlainTransport 等&#xff0c;用来实现不同目的和场景的媒体通信。WebRtcTransport 是 mediasoup 实现与 WebRTC 客户端进行媒体通信的对象&#xff0c;是 mediasoup 最重要…...

如何让局域网中的其他电脑访问VMWare虚拟机上的Windows虚拟系统

场景描述 事情是这样的&#xff0c;我在我的主机&#xff08;Win10&#xff09;上搭建了一个VMWare虚拟机&#xff0c;并安装了Windows Server的虚拟系统&#xff0c;想用它来测试一些东西。但是呢&#xff0c;我发现尽管我的主机可以愉快地跟这个服务器对话&#xff0c;可办公…...

旧电脑回收前怎么清除数据

随着技术的快速更新换代&#xff0c;很多人的电脑也会不断的更新升级&#xff0c;比如给电脑升级硬件或是更换新电脑&#xff0c;从而获得更好的性能和体验。那么旧的电脑及电脑部件怎么处理更安全呢&#xff1f;我们要确保旧电脑上的个人数据被彻底清除干净&#xff0c;这样可…...

python——TinyDB

TinyDB 是一个轻量级的纯 Python 写入的文档数据库。它不需要单独的服务器进程或复杂的配置&#xff0c;只需导入模块即可开始使用。TinyDB 适合于小型项目或测试用例&#xff0c;它的数据存储在本地文件中。 TinyDB 的基本 API 和使用方式&#xff1a; 初始化数据库 from tin…...

【北京迅为】《i.MX8MM嵌入式Linux开发指南》-第三篇 嵌入式Linux驱动开发篇-第三十八章 驱动模块编译进内核

i.MX8MM处理器采用了先进的14LPCFinFET工艺&#xff0c;提供更快的速度和更高的电源效率;四核Cortex-A53&#xff0c;单核Cortex-M4&#xff0c;多达五个内核 &#xff0c;主频高达1.8GHz&#xff0c;2G DDR4内存、8G EMMC存储。千兆工业级以太网、MIPI-DSI、USB HOST、WIFI/BT…...

Mailspring搭建安装教程:打造个性邮件体验

Mailspring搭建安装教程步骤&#xff01;如何选择电子邮件服务商&#xff1f; Mailspring作为一款功能强大、界面友好的邮件客户端&#xff0c;成为了许多用户的首选。AokSend将为大家提供详细的Mailspring搭建安装教程&#xff0c;帮助您打造个性化的邮件体验。 Mailspring搭…...

【分布式锁】Redission实现分布式锁

接着上一节&#xff0c;我们遇到了超卖的问题&#xff0c;并通过Redis实现分布式锁&#xff0c;进行了解决。本节 我将换一种方式实现分布式锁。 前提&#xff1a; nginx、redis、nacos 模块1&#xff1a; provider-and-consumer 端口 8023 模块2 rabbitmq-consumer 端口 8021 …...

UE4/5 对话系统

参考教程&#xff1a;UE4甜筒教艺术生学蓝图#21.UE4对话系统(1)--唠嗑案例展示_哔哩哔哩_bilibili 说来惭愧两年前看的教程&#xff0c;现在才记录一下&#xff0c;很好的教程推荐大家观看 1.首先创建两个枚举&#xff0c;内容如下 2.创建三个结构体&#xff0c;内容如下 3.再…...

Golang | Leetcode Golang题解之第275题H指数II

题目&#xff1a; 题解&#xff1a; func hIndex(citations []int) int {n : len(citations)return n - sort.Search(n, func(x int) bool { return citations[x] > n-x }) }...

Python—面向过程编程,详细讲解(类和实例,初始化函数,类中封装数据与操作)

1.类和实例 类&#xff1a;类别 实例&#xff08;对象&#xff09;&#xff1a;类型塑造出来的某一个具体的内容 isinstance(对象&#xff0c;类) 返回一个对象是否是一个类的实例 # 声明一个整数类的实例10 a int(10) # a 10 print(type(a), isinstance(a, int)) a flo…...

Linux云计算 |【第一阶段】SERVICES-DAY2

主要内容&#xff1a; DNS服务基础及搭建、特殊解析(针对地址库文件&#xff1a;DNS轮询 DNS泛域名解析 DNS别名&#xff09;、缓存DNS&#xff08;全局转发forwarders&#xff09;、DNS递归迭代&#xff08;子域授权&#xff09;、DNS主从架构搭建、DNS主从数据同步 一、DNS工…...

el-upload照片墙自定义上传多张图片(手动一次性上传多张图片)包含图片回显,删除

需求&#xff1a;el-upload照片墙自定义上传多张图片&#xff08;手动一次性上传多张图片&#xff09;包含图片回显&#xff0c;删除&#xff0c;预览&#xff0c;在网上看了很多&#xff0c;都没有说怎么把数据转为file格式的&#xff0c;找了很久最终实现&#xff0c; 难点&a…...

三星Unpacked发布会即将举行:有新款折叠屏手机,还有智能戒指

随着7月的脚步渐近&#xff0c;科技界的目光再次聚焦于三星&#xff0c;它即将在法国巴黎举办今年的第二场Unpacked发布会。这不仅是一场新品的展示&#xff0c;更是三星对创新科技的一次深刻诠释。 从Galaxy Z Fold 6的全新设计&#xff0c;到Galaxy Z Flip 6的显著升级&…...

【Python】Matplotlib简要教程

文章目录 一、简介二、一些基本概念2.1 图表元素2.2 常见图表类型2.3 主要绘图函数及其返回值2.4 Artists 的概念 三、基本图表详解3.1 成对数据3.11 折线图&#xff1a;plot()&#x1f7e8;设置图表样式&#x1f7e8;设置各种标签&#x1f7e8;设置坐标轴&#x1f7e8;绘制子图…...

数驭未来,景联文科技构建高质大模型数据库

国内应用层面的需求推动AI产业的加速发展。根据IDC数据预测&#xff0c;预计2026年中国人工智能软件及应用市场规模会达到211亿美元。 数据、算法、算力是AI发展的驱动力&#xff0c;其中数据是AI发展的基石&#xff0c;中国的数据规模增长速度预期将领跑全球。 2024年《政府工…...

视频汇聚平台EasyCVR启动出现报错“cannot open shared object file”的原因排查与解决

安防视频监控EasyCVR安防监控视频系统采用先进的网络传输技术&#xff0c;支持高清视频的接入和传输&#xff0c;能够满足大规模、高并发的远程监控需求。EasyCVR平台支持多种视频流的外部分发&#xff0c;如RTMP、RTSP、HTTP-FLV、WebSocket-FLV、HLS、WebRTC、fmp4等&#xf…...

VMware 安装完,设备管理器中没有虚拟网卡(vmnet0、wmnet1、vmnet8) / 虚拟网络编辑器中没有桥接模式

问题&#xff1a;VMware 安装完&#xff0c;设备管理器中没有虚拟网卡(vmnet0、wmnet1、vmnet8) / 虚拟网络编辑器中没有桥接模式 1、确认 Device Install Service 和 Device Setup Manager 没有被禁用 Device Install Service 和 Device Setup Manager是 Windows 操作系统中…...

【Python】 -- 趣味代码 - 小恐龙游戏

文章目录 文章目录 00 小恐龙游戏程序设计框架代码结构和功能游戏流程总结01 小恐龙游戏程序设计02 百度网盘地址00 小恐龙游戏程序设计框架 这段代码是一个基于 Pygame 的简易跑酷游戏的完整实现,玩家控制一个角色(龙)躲避障碍物(仙人掌和乌鸦)。以下是代码的详细介绍:…...

[10-3]软件I2C读写MPU6050 江协科技学习笔记(16个知识点)

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16...

GitHub 趋势日报 (2025年06月08日)

&#x1f4ca; 由 TrendForge 系统生成 | &#x1f310; https://trendforge.devlive.org/ &#x1f310; 本日报中的项目描述已自动翻译为中文 &#x1f4c8; 今日获星趋势图 今日获星趋势图 884 cognee 566 dify 414 HumanSystemOptimization 414 omni-tools 321 note-gen …...

Go 语言并发编程基础:无缓冲与有缓冲通道

在上一章节中&#xff0c;我们了解了 Channel 的基本用法。本章将重点分析 Go 中通道的两种类型 —— 无缓冲通道与有缓冲通道&#xff0c;它们在并发编程中各具特点和应用场景。 一、通道的基本分类 类型定义形式特点无缓冲通道make(chan T)发送和接收都必须准备好&#xff0…...

深度学习之模型压缩三驾马车:模型剪枝、模型量化、知识蒸馏

一、引言 在深度学习中&#xff0c;我们训练出的神经网络往往非常庞大&#xff08;比如像 ResNet、YOLOv8、Vision Transformer&#xff09;&#xff0c;虽然精度很高&#xff0c;但“太重”了&#xff0c;运行起来很慢&#xff0c;占用内存大&#xff0c;不适合部署到手机、摄…...

leetcode_69.x的平方根

题目如下 &#xff1a; 看到题 &#xff0c;我们最原始的想法就是暴力解决: for(long long i 0;i<INT_MAX;i){if(i*ix){return i;}else if((i*i>x)&&((i-1)*(i-1)<x)){return i-1;}}我们直接开始遍历&#xff0c;我们是整数的平方根&#xff0c;所以我们分两…...

【工具教程】多个条形码识别用条码内容对图片重命名,批量PDF条形码识别后用条码内容批量改名,使用教程及注意事项

一、条形码识别改名使用教程 打开软件并选择处理模式&#xff1a;打开软件后&#xff0c;根据要处理的文件类型&#xff0c;选择 “图片识别模式” 或 “PDF 识别模式”。如果是处理包含条形码的 PDF 文件&#xff0c;就选择 “PDF 识别模式”&#xff1b;若是处理图片文件&…...

Android Framework预装traceroute执行文件到system/bin下

文章目录 Android SDK中寻找traceroute代码内置traceroute到SDK中traceroute参数说明-I 参数&#xff08;使用 ICMP Echo 请求&#xff09;-T 参数&#xff08;使用 TCP SYN 包&#xff09; 相关文章 Android SDK中寻找traceroute代码 设备使用的是Android 11&#xff0c;在/s…...

ABB馈线保护 REJ601 BD446NN1XG

配电网基本量程数字继电器 REJ601是一种专用馈线保护继电器&#xff0c;用于保护一次和二次配电网络中的公用事业和工业电力系统。该继电器在一个单元中提供了保护和监控功能的优化组合&#xff0c;具有同类产品中最佳的性能和可用性。 REJ601是一种专用馈线保护继电器&#xf…...

python打卡day47

昨天代码中注意力热图的部分顺移至今天 知识点回顾&#xff1a; 热力图 作业&#xff1a;对比不同卷积层热图可视化的结果 import torch import torch.nn as nn import torch.optim as optim from torchvision import datasets, transforms from torch.utils.data import D…...