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

Golang | Leetcode Golang题解之第449题序列化和反序列化二叉搜索树

题目:

题解:

type Codec struct{}func Constructor() (_ Codec) { return }func (Codec) serialize(root *TreeNode) string {arr := []string{}var postOrder func(*TreeNode)postOrder = func(node *TreeNode) {if node == nil {return}postOrder(node.Left)postOrder(node.Right)arr = append(arr, strconv.Itoa(node.Val))}postOrder(root)return strings.Join(arr, " ")
}func (Codec) deserialize(data string) *TreeNode {if data == "" {return nil}arr := strings.Split(data, " ")var construct func(int, int) *TreeNodeconstruct = func(lower, upper int) *TreeNode {if len(arr) == 0 {return nil}val, _ := strconv.Atoi(arr[len(arr)-1])if val < lower || val > upper {return nil}arr = arr[:len(arr)-1]return &TreeNode{Val: val, Right: construct(val, upper), Left: construct(lower, val)}}return construct(math.MinInt32, math.MaxInt32)
}

相关文章:

  • vue框架学习-- 父子页面 参数方法调用
  • 执行力怎么培养?
  • 1.1.4 计算机网络的分类
  • 【C++打怪之路Lv4】-- 类和对象(中)
  • Find My汽车钥匙|苹果Find My技术与钥匙结合,智能防丢,全球定位
  • 介绍篇| 爬虫工具介绍
  • 墙绘交易平台:SpringBoot框架的设计与实现
  • Redis缓存淘汰算法详解
  • Mac优化清理工具CleanMyMac X 4.15.6 for mac中文版
  • 《OpenCV 计算机视觉》—— 视频背景建模
  • 基于STM32+4G通信技术设计远程农田灌溉系统(236)
  • Python空间地表联动贝叶斯地震风险计算模型
  • 前端工程规范-5:Git提交信息规范(commitlint + czg)
  • AWS Redshift把老用户权限赋予新用户
  • 计算机毕业设计 基于爬虫与文本挖掘的网络舆情监控系统的设计与实现 Python+Django+Vue 前后端分离 附源码 讲解 文档
  • SegmentFault for Android 3.0 发布
  • 2019年如何成为全栈工程师?
  • Apache Spark Streaming 使用实例
  • Apache Zeppelin在Apache Trafodion上的可视化
  • Effective Java 笔记(一)
  • Java 实战开发之spring、logback配置及chrome开发神器(六)
  • java小心机(3)| 浅析finalize()
  • JS 面试题总结
  • Js基础知识(一) - 变量
  • sublime配置文件
  • Vue2 SSR 的优化之旅
  • vue-router 实现分析
  • vue--为什么data属性必须是一个函数
  • Zsh 开发指南(第十四篇 文件读写)
  • 观察者模式实现非直接耦合
  • 一些css基础学习笔记
  • 原生Ajax
  • Java性能优化之JVM GC(垃圾回收机制)
  • ‌Excel VBA进行间比法设计
  • #100天计划# 2013年9月29日
  • #1014 : Trie树
  • (3)Dubbo启动时qos-server can not bind localhost22222错误解决
  • (WSI分类)WSI分类文献小综述 2024
  • (分布式缓存)Redis持久化
  • (附源码)springboot青少年公共卫生教育平台 毕业设计 643214
  • (十七)Flask之大型项目目录结构示例【二扣蓝图】
  • (四)Controller接口控制器详解(三)
  • (五)关系数据库标准语言SQL
  • (原)记一次CentOS7 磁盘空间大小异常的解决过程
  • (原創) 如何動態建立二維陣列(多維陣列)? (.NET) (C#)
  • (转)淘淘商城系列——使用Spring来管理Redis单机版和集群版
  • .net 调用海康SDK以及常见的坑解释
  • .NET/C# 使窗口永不获得焦点
  • .NET企业级应用架构设计系列之开场白
  • /bin/bash^M: bad interpreter: No such file ordirectory
  • @html.ActionLink的几种参数格式
  • @property python知乎_Python3基础之:property
  • [【JSON2WEB】 13 基于REST2SQL 和 Amis 的 SQL 查询分析器
  • [240621] Anthropic 发布了 Claude 3.5 Sonnet AI 助手 | Socket.IO 拒绝服务漏洞
  • [bug总结]: Feign调用GET请求找不到请求体实体类