CodeTop100 Day19

article/2025/7/20 10:13:54

55、从前序与中序遍历序列构造二叉树

前序是根左右,中序是左根右

写一个递归函数,build(preorder,0,preorder.length-1,inorder,0,inorder.length-1);接收的参数是先序遍历数组,起始位置,长度,中序位置与长度,递归出口是起始位置不能超出数组长度

最上根结点肯定是先序数组的起始位置也就是preorder[0],然后从中序数组找到根的下标,计算长度,然后递归,root.left=build(左) root.right=build(右) 返回root

/*** Definition for a binary tree node.* public class TreeNode {*     int val;*     TreeNode left;*     TreeNode right;*     TreeNode() {}*     TreeNode(int val) { this.val = val; }*     TreeNode(int val, TreeNode left, TreeNode right) {*         this.val = val;*         this.left = left;*         this.right = right;*     }* }*///中序遍历:左根右
//先序遍历:根左右
class Solution {public TreeNode buildTree(int[] preorder, int[] inorder) {//递归,判断根root=preorder[0],找到inorder中root的位置分成左右两份,左边是左子树//右边是右子树,从preorder中从root后找到左子树,第一个元素就是根,递归return build(preorder,0,preorder.length-1,inorder,0,inorder.length-1);}public TreeNode build(int[] preorder,int prestart,int preend,int[] inorder,int instart,int inend){if(prestart>preend||instart>inend){return null;}TreeNode root=new TreeNode(preorder[prestart]);int index=0;for(int i=instart;i<=inend;i++){if(inorder[i]==preorder[prestart]){index=i;break;}}int leftsize=index-instart;root.left=build(preorder,prestart+1,prestart+leftsize,inorder,instart,index-1);root.right=build(preorder,prestart+leftsize+1,preend,inorder,index+1,inend);return root;}
}

56、子集

经典回溯

class Solution {public List<List<Integer>> subsets(int[] nums) {List<List<Integer>> result=new ArrayList<>();if(nums==null||nums.length==0){return result;}backtrack(nums,0,new ArrayList<>(),result);return result;}private void backtrack( int[] nums,int start,List<Integer> current,List<List<Integer>> result){result.add(new ArrayList<>(current));for(int i=start;i<nums.length;i++){current.add(nums[i]);backtrack(nums,i+1,current,result);current.remove(current.size()-1);}}}

过于经典的模板,遍历,退回,输出答案

57、字符串相乘

class Solution {public String multiply(String num1, String num2) {int n=num1.length(),m=num2.length();if(num1.charAt(0)=='0'||num2.charAt(0)=='0')return "0";int[] res=new int[n+m-1];for(int i=0;i<n;i++){for(int j=0;j<m;j++){res[i+j]+=(num1.charAt(i)-'0')*(num2.charAt(j)-'0');}}int tmp=0;for(int k=res.length-1;k>=0;k--){res[k]+=tmp;tmp=res[k]/10;res[k]%=10;}StringBuilder sb=new StringBuilder();if(tmp>0){sb.append(tmp);}for(int x:res){sb.append(x);}return sb.toString();}
}


http://www.hkcw.cn/article/ThcECyXtWj.shtml

相关文章

又要热热热回来了 多地将迎持续高温

华北和黄淮地区本周将迎来更多高温天气。明天,河北南部和河南北部将出现零星高温,随后高温范围会逐渐扩大。石家庄、济南和郑州等地预计本周会有连续3到5天的高温天气。从5日起,随着副热带高压加强并向北移动,南方地区的高温也将增加。武汉、杭州和长沙在6日预报了高温,如…

如何利用自动生成文档工具打造出色的技术文档

文章目录 每日一句正能量前言一、自动生成文档工具的优势&#xff08;一&#xff09;提高效率&#xff08;二&#xff09;保持一致性&#xff08;三&#xff09;实时更新 二、常见的自动生成文档工具&#xff08;一&#xff09;Sphinx&#xff08;二&#xff09;Javadoc&#x…

张雪峰称或告别直播:动了太多人蛋糕 真情流露引共鸣

5月31日晚,有网友发布视频称张雪峰2025届高考志愿填报季直播结束。直播中,张雪峰提到:“做这行不容易,触动了太多人的利益,有些话不能说得太直白。我们计划8月份恢复直播,希望8月1日能和大家见面,如果不行的话,9月1日也可以,但也有可能这是你最后一次在网上见到我,我…

[蓝桥杯]剪格子

剪格子 题目描述 如下图所示&#xff0c;3 x 3 的格子中填写了一些整数。 我们沿着图中的红色线剪开&#xff0c;得到两个部分&#xff0c;每个部分的数字和都是 60。 本题的要求就是请你编程判定&#xff1a;对给定的 mnmn 的格子中的整数&#xff0c;是否可以分割为两个部…

中国援喀麦隆医疗队开展义诊活动 情暖六一关爱健康

当地时间5月30日至6月1日,中国(山西)第24批援喀麦隆姆巴尔马尤医疗队在喀麦隆杜阿拉开展了一系列健康公益活动,通过专业医疗服务和人文关怀为中非友谊注入新活力。5月30日,医疗队在中企杜阿拉项目园区进行了健康知识宣讲。医生们通过理论讲解与实操演示,系统培训了AED(自…

【连载22】基础智能体的进展与挑战综述-超对齐

21. 超对齐与人工智能智能体中的安全扩展法则 21.1 超对齐&#xff1a;面向目标的人工智能智能体对齐 随着大规模语言模型&#xff08;LLMs&#xff09;越来越多地成为自主智能体决策的核心&#xff0c;确保它们的输出保持安全、伦理&#xff0c;并始终与人类目标一致&#x…

【技术追踪】InverseSR:使用潜在扩散模型进行三维脑部 MRI 超分辨率重建(MICCAI-2023)

LDM 实现三维超分辨率~ 论文&#xff1a;InverseSR: 3D Brain MRI Super-Resolution Using a Latent Diffusion Model 代码&#xff1a;https://github.com/BioMedAI-UCSC/InverseSR 0、摘要 从研究级医疗机构获得的高分辨率&#xff08;HR&#xff09;MRI 扫描能够提供关于成像…

美科罗拉多州恐袭嫌疑人曝光 FBI定性恐袭

当地时间6月1日,美国科罗拉多州博尔德市一名男子向人群投掷燃烧瓶,造成6人烧伤。受害者年龄在67至88岁之间,均已送医。嫌疑人确认是45岁的穆罕默德苏莱曼,案发后亦因伤入院。FBI局长卡什帕特尔称该事件为“有针对性的恐怖袭击”,并指出FBI已将此案按恐袭处理。副局长丹邦吉…

成都90后小伙让刀剑重获新生 十年磨一剑

在成都邛崃郊外的一间工作室里,一把锈迹斑斑的古刀静静地躺在工作台上。王一凯戴上手套,拿起磨石,开始了又一个漫长的工作日。磨石与刀身接触,发出“嗤嗤”的摩擦声。褐色锈层缓缓剥落,千年前的钢铁本色渐渐显露。这把沉睡已久的古刀,在他手中慢慢苏醒。1991年出生的王一…

白俄罗斯媒体:卢卡申科将访华 深化双边合作

白俄罗斯总统卢卡申科计划于本月2日至4日访问中国。此前,卢卡申科曾表示,白中关系是互利共赢的典范。白方将坚定恪守一个中国原则,并愿与中方共同推进“一带一路”重大项目,发展新质生产力,助力各自的发展振兴。责任编辑:zhangxiaohua

气象部门回应西藏现红色精灵闪电 罕见现象揭秘

5月31日至6月1日,中国摄影师在西藏山南拍到红色精灵闪电。精灵闪电形成于大气中间层,是雷击产生电磁波的结果。据中国天气科普,它在空中存在几十分之一秒,如鬼魅一般难以捉摸。责任编辑:zhangxiaohua

吴恩达MCP课程(4):connect_server_mcp_chatbot

目录 完整代码代码解释1. 导入和初始化2. 类型定义3. MCP_ChatBot 类初始化4. 查询处理 (process_query)5. 服务器连接管理6. 核心特性总结 示例 完整代码 原课程代码是用Anthropic写的&#xff0c;下面代码是用OpenAI改写的&#xff0c;模型则用阿里巴巴的模型做测试 .env 文…

网页前端开发(基础进阶1--盒子模型)

颜色表示方法3种&#xff1a; 1.关键字&#xff1a; color&#xff1a;green&#xff1b; gray red yellow 2.rgb表示法&#xff1a;红&#xff0c;绿&#xff0c;蓝三原色。rgb&#xff08;r&#xff0c;g&#xff0c;b&#xff09;&#xff0c;r表示红色&#xff0c;g表示绿…

中国造船是如何取代韩国霸主地位的 14年激战成就全球王者

在全球造船业的百年激荡中,主导权的更迭总是伴随着技术、规模与国家意志的碰撞。从19世纪的英国,到战后的日本,再到20世纪末的韩国,造船业王冠几度易主。如今,中国以雷霆万钧之势终结了韩国长达20年的霸主地位。2024年,中国造船业以74.7%的新船订单份额,全面改写全球造船…

加沙城四分之三水井被以军摧毁 缺水危机加剧

加沙城政府部门6月1日发布消息称,由于以军摧毁了当地约75%的水井,且剩余水井缺乏正常运行所需燃料,加沙城正面临严重的缺水问题和灾难性危机。该部门警告称,如果国际社会和相关机构不尽快介入,可能会引发严重的健康和环境危机。责任编辑:zhangxiaohua

马克龙接见巴黎圣日耳曼全队 谴责暴力事件

巴黎圣日耳曼队在5月31日晚赢得了欧冠联赛冠军奖杯,法国多地的球迷彻夜庆祝。然而,庆祝活动期间发生了多起暴力事件。据法国内政部消息,狂欢夜有559人因滋事被捕,并发生了两起命案。法国总统马克龙6月1日在爱丽舍宫接见球队时,严厉谴责了这些暴力事件,称其“不可接受”。…

C++实现汉诺塔游戏自动完成

目录 一、汉诺塔的规则二、数学递归推导式三、步骤实现(一)汉诺塔模型(二)递归实现(三)显示1.命令行显示2.SDL图形显示 四、处理用户输入及SDL环境配置五、总结六、源码下载 一、汉诺塔的规则 游戏由3根柱子和若干大小不一的圆盘组成&#xff0c;初始状态下&#xff0c;所有的…

抖音评论数据采集解决方案推荐

内容概要 在当今数字化营销的背景下&#xff0c;抖音作为一款广受欢迎的短视频平台&#xff0c;吸引了众多用户和企业的关注。为了更好地理解用户反馈和优化营销策略&#xff0c;评论数据的采集显得尤为重要。本文将为读者提供一系列系统化的解决方案&#xff0c;涵盖多款高效…

若依框架-代码生成器的使用

1.服务启动 注意一定要启动Gen\GateWay\System 2.创建表 注意一定要写上字段的注释和表的注释。 1.注意主键的命名 2.注意驼峰命名法 3.代码生成 3.1 按照以下箭头步骤&#xff0c;选择生成的表&#xff0c;点击确定 3.2 核对生成表的结构 3.3 编辑生成表的基础信息 3.4 点…

河南46岁卡车司机已下葬 卡友团队千里送别

近日,46岁的河南卡车司机常志荣在青藏高原离世,卡友团队一同将其骨灰接回老家。6月1日,常志荣已经在老家安葬。他去世后留下了重组家庭的6个孩子,其中5个孩子还在上学。车友任先生透露,常志荣出发前同行曾建议他至少携带两罐氧气,但他为了省下30元费用,最终只购买了一罐…