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

Golang | Leetcode Golang题解之第297题二叉树的序列化与反序列化

题目:

题解:

type Codec struct{}func Constructor() (_ Codec) {return
}func (c Codec) serialize(root *TreeNode) string {if root == nil {return "X"}left := "(" + c.serialize(root.Left) + ")"right := "(" + c.serialize(root.Right) + ")"return left + strconv.Itoa(root.Val) + right
}func (Codec) deserialize(data string) *TreeNode {var parse func() *TreeNodeparse = func() *TreeNode {if data[0] == 'X' {data = data[1:]return nil}node := &TreeNode{}data = data[1:] // 跳过左括号node.Left = parse()data = data[1:] // 跳过右括号i := 0for data[i] == '-' || '0' <= data[i] && data[i] <= '9' {i++}node.Val, _ = strconv.Atoi(data[:i])data = data[i:]data = data[1:] // 跳过左括号node.Right = parse()data = data[1:] // 跳过右括号return node}return parse()
}

相关文章:

Golang | Leetcode Golang题解之第297题二叉树的序列化与反序列化

题目&#xff1a; 题解&#xff1a; type Codec struct{}func Constructor() (_ Codec) {return }func (c Codec) serialize(root *TreeNode) string {if root nil {return "X"}left : "(" c.serialize(root.Left) ")"right : "("…...

交叉熵和MSE的区别

交叉熵 交叉熵损失通常用于分类问题&#xff0c;尤其是二分类和多分类问题。它度量的是预测概率分布与真实标签概率分布之间的差异。 适用于分类问题。常用于神经网络中的Softmax层之后作为损失函数。适用于二分类、多分类中的模型优化&#xff08;如图像分类、文本分类等&am…...

具身智能又进一步!卡内基梅隆Meta苏黎世联邦实现虚拟人超灵活抓取

论文链接&#xff1a;https://arxiv.org/pdf/2407.11385 github链接&#xff1a;https://www.zhengyiluo.com/Omnigrasp-Site/ 亮点直击 本文设计了一种灵巧且通用的人形机器人运动表示&#xff0c;这显著提高了样本效率&#xff0c;并使得通过简单而有效的状态和奖励设计来学习…...

嘉盛:货币政策走向与市场预期

在当前经济背景下&#xff0c;美联储的政策决策备受关注。尽管本周的会议可能不会带来实质性利率变动&#xff0c;但其后的走向可能对未来产生深远影响。市场预期与政策走向 随着近几个月大量通胀数据公布&#xff0c;市场普遍预计&#xff0c;美联储将为即将到来的降息措施奠定…...

[C#]基于wpf实现的一百多种音色的Midi键盘软件

键盘 音色库 源码地址&#xff1a;https://download.csdn.net/download/FL1623863129/89599322...

关于香橙派系统烧录,1.1.8或者1.1.10两个版本都无法启动Orangepi5

先执行 git clone https://github.com/orangepi-xunlong/orangepi-build.gitgit log 默认会显示较新的提交记录。如果你需要查看更多的提交记录&#xff0c;可以使用以下方法&#xff1a; git log --oneline --graph --all这会以简洁的方式显示所有分支的提交记录&#xff0c…...

深入解析Python `httpx`源码,探索现代HTTP客户端的秘密!

&#x1f538; 第一部分&#xff1a;httpx请求入口 我们从最常用的入口开始&#xff0c;看看如何使用httpx库发送HTTP请求。通常&#xff0c;我们会使用 httpx.get() 或 httpx.post() 方法&#xff1a; import httpxresponse httpx.get(https://example.com) print(response…...

python爬虫【3】—— 爬虫反反爬

一、常见的反爬手段和解决方法 二、splash 介绍与安装 三、验证码识别 图片验证码的处理方案 手动输入(input) 这种方法仅限于登录一次就可持续使用的情况图像识别引擎解析 使用光学识别引擎处理图片中的数据&#xff0c;目前常用于图片数据提取&#xff0c;较少用于验证码…...

LIS接入开发

"LIS" 实验室信息系统&#xff08;Laboratory Information System&#xff09;。这是一种用于管理和处理实验室产生的数据和信息的软件系统。LIS广泛应用于各种类型的实验室中&#xff0c;包括医院实验室、独立的参考实验室、病理学实验室以及研究实验室等。 LIS的功…...

Stable Diffusion Windows本地部署超详细教程(手动+自动+整合包三种方式)

2022年作为AIGC&#xff08;Artificial Intelligence Generated Content&#xff09;时代的元年&#xff0c;各个领域的AIGC技术都有一个迅猛的发展&#xff0c;给工业界、学术界、投资界甚至竞赛界都注入了新的“AI活力”与“AI势能”。 其中在AI绘画领域&#xff0c;Stable D…...

【Golang 面试 - 基础题】每日 5 题(七)

✍个人博客&#xff1a;Pandaconda-CSDN博客 &#x1f4e3;专栏地址&#xff1a;http://t.csdnimg.cn/UWz06 &#x1f4da;专栏简介&#xff1a;在这个专栏中&#xff0c;我将会分享 Golang 面试中常见的面试题给大家~ ❤️如果有收获的话&#xff0c;欢迎点赞&#x1f44d;收藏…...

教你如何从Flink小白成为Contributor最终拿到腾讯的Offer

简言&#xff1a;一开始我也是怀揣着成为一个技术大老的梦想开始的&#xff0c;尽管我现在已经入职腾讯三年多了有时候觉得自己还是一个菜鸡哈..... 写这个文章希望可以帮助到刚刚接触大数据&#xff0c;并且对技术怀揣着梦想的朋友们&#xff0c;大家互相学习哈(对Flink不是很…...

java-数据结构与算法-02-数据结构-07-优先队列

1. 概念 队列是一种先进先出的结构&#xff0c;但是有些时候&#xff0c;要操作的数据带有优先级&#xff0c;一般出队时&#xff0c;优先级较高的元素先出队&#xff0c;这种数据结构就叫做优先级队列。 比如&#xff1a;你在打音游的时候&#xff0c;你的朋友给你打了个电话…...

从0开始搭建vue + flask 旅游景点数据分析系统(一):创建前端项目

基于scrapy爬取到的景点和评论数据&#xff0c;本期开始搭建一个vueflask的前后端分离的数据分析系统。 本教程为麦麦原创&#xff0c;也可以去B站找我 &#x1f449;&#x1f3fb; 我的空间 &#x1f9d1;‍&#x1f393; 前置课程 &#x1f578; scrapy实战 爬取景点信息和…...

支持AI的好用的编辑器aieditor

一、工具概述 AiEditor 是一个面向 AI 的下一代富文本编辑器&#xff0c;她基于 Web Component&#xff0c;因此支持 Layui、Vue、React、Angular 等几乎任何前端框架。她适配了 PC Web 端和手机端&#xff0c;并提供了 亮色 和 暗色 两个主题。除此之外&#xff0c;她还提供了…...

数据结构之《栈》

在之前我们已经学习了数据结构中线性表里面的顺序表与链表&#xff0c;了解了如何实现顺序表与链表增、删、查、该等功能。其实在线性表中除了顺序表和链表还有其他的类别&#xff0c;在本篇中我们就将学习另外一种线性表——栈&#xff0c;在通过本篇的学习后&#xff0c;你将…...

Vue3基础语法

一&#xff1a;创建Vue3工程&#xff08;适用Vite打包工具&#xff09; Vite官网&#xff1a;Home | Vite中文网 (vitejs.cn) 直接新建一个文件夹&#xff0c;打开cmd运行&#xff1a; npm create vitelatest 选择Vue和TS语言即可 生成一个项目。 Vue3的核心语法&#xff…...

【Python】基础学习技能提升代码样例4:常见配置文件和数据文件读写ini、yaml、csv、excel、xml、json

一、 配置文件 1.1 ini 官方-configparser config.ini文件如下&#xff1a; [url] ; section名称baidu https://www.zalou.cnport 80[email]sender ‘xxxqq.com’import configparser # 读取 file config.ini # 创建配置文件对象 con configparser.ConfigParser() # 读…...

JavaScript基础——JavaScript调用的三种方式

JavaScript简介 JavaScript的作用 JavaScript的使用方式 内嵌JS 引入外部js文件 编写函数 JavaScript简介 JavaScript&#xff08;简称“JS”&#xff09;是一种具有函数优先的轻量级&#xff0c;解释型或即时编译型的编程语言。它是Web开发中最常用的脚本语言之一&#x…...

ITSS:IT服务工程师

证书亮点&#xff1a;适中的费用、较低的难度、广泛的应用范围以及专业的运维认证。 总体评价&#xff1a;性价比良好&#xff01; 证书名称&#xff1a;ITSS服务工程师 证书有效期&#xff1a;持续3年 培训要求&#xff1a;必须参加培训&#xff0c;否则将无法参与考试 发…...

为什么需要建设工程项目管理?工程项目管理有哪些亮点功能?

在建筑行业&#xff0c;项目管理的重要性不言而喻。随着工程规模的扩大、技术复杂度的提升&#xff0c;传统的管理模式已经难以满足现代工程的需求。过去&#xff0c;许多企业依赖手工记录、口头沟通和分散的信息管理&#xff0c;导致效率低下、成本失控、风险频发。例如&#…...

TRS收益互换:跨境资本流动的金融创新工具与系统化解决方案

一、TRS收益互换的本质与业务逻辑 &#xff08;一&#xff09;概念解析 TRS&#xff08;Total Return Swap&#xff09;收益互换是一种金融衍生工具&#xff0c;指交易双方约定在未来一定期限内&#xff0c;基于特定资产或指数的表现进行现金流交换的协议。其核心特征包括&am…...

相机Camera日志分析之三十一:高通Camx HAL十种流程基础分析关键字汇总(后续持续更新中)

【关注我,后续持续新增专题博文,谢谢!!!】 上一篇我们讲了:有对最普通的场景进行各个日志注释讲解,但相机场景太多,日志差异也巨大。后面将展示各种场景下的日志。 通过notepad++打开场景下的日志,通过下列分类关键字搜索,即可清晰的分析不同场景的相机运行流程差异…...

今日科技热点速览

&#x1f525; 今日科技热点速览 &#x1f3ae; 任天堂Switch 2 正式发售 任天堂新一代游戏主机 Switch 2 今日正式上线发售&#xff0c;主打更强图形性能与沉浸式体验&#xff0c;支持多模态交互&#xff0c;受到全球玩家热捧 。 &#x1f916; 人工智能持续突破 DeepSeek-R1&…...

用docker来安装部署freeswitch记录

今天刚才测试一个callcenter的项目&#xff0c;所以尝试安装freeswitch 1、使用轩辕镜像 - 中国开发者首选的专业 Docker 镜像加速服务平台 编辑下面/etc/docker/daemon.json文件为 {"registry-mirrors": ["https://docker.xuanyuan.me"] }同时可以进入轩…...

使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台

🎯 使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台 📌 项目背景 随着大语言模型(LLM)的广泛应用,开发者常面临多个挑战: 各大模型(OpenAI、Claude、Gemini、Ollama)接口风格不统一;缺乏一个统一平台进行模型调用与测试;本地模型 Ollama 的集成与前…...

Spring Security 认证流程——补充

一、认证流程概述 Spring Security 的认证流程基于 过滤器链&#xff08;Filter Chain&#xff09;&#xff0c;核心组件包括 UsernamePasswordAuthenticationFilter、AuthenticationManager、UserDetailsService 等。整个流程可分为以下步骤&#xff1a; 用户提交登录请求拦…...

mac:大模型系列测试

0 MAC 前几天经过学生优惠以及国补17K入手了mac studio,然后这两天亲自测试其模型行运用能力如何&#xff0c;是否支持微调、推理速度等能力。下面进入正文。 1 mac 与 unsloth 按照下面的进行安装以及测试&#xff0c;是可以跑通文章里面的代码。训练速度也是很快的。 注意…...

Python训练营-Day26-函数专题1:函数定义与参数

题目1&#xff1a;计算圆的面积 任务&#xff1a; 编写一个名为 calculate_circle_area 的函数&#xff0c;该函数接收圆的半径 radius 作为参数&#xff0c;并返回圆的面积。圆的面积 π * radius (可以使用 math.pi 作为 π 的值)要求&#xff1a;函数接收一个位置参数 radi…...

EasyRTC音视频实时通话功能在WebRTC与智能硬件整合中的应用与优势

一、WebRTC与智能硬件整合趋势​ 随着物联网和实时通信需求的爆发式增长&#xff0c;WebRTC作为开源实时通信技术&#xff0c;为浏览器与移动应用提供免插件的音视频通信能力&#xff0c;在智能硬件领域的融合应用已成必然趋势。智能硬件不再局限于单一功能&#xff0c;对实时…...