算法-递归

题目:打印中序遍历指定节点的后续节点

思路:两种情况当前节点右子树是否为null,如果不是返回右子树最左非空子节点,否则往上找,直到父节点为空或者当前节点是父节点的左子树,返回父节点

public class Code06_SuccessorNode {public static Node getSuccessorNode(Node node) {if(node== null)return null;// 中序遍历 当前节点的后续节点if(node.right != null){Node cur = node.right;while (cur.left != null){cur = cur.left;}return cur;}else{Node cur = node;Node parent = cur.parent;while (parent != null && parent.right == cur){cur = parent;parent = parent.parent;}return parent;}}
}

题目:请把一段纸条竖着放在桌子上,然后从纸条的下边向上方对折1次,压出折痕后展开。此时折痕是凹下去的,即折痕突起的方向指向纸条的背面。 如果从纸条的下边向上方连续对折2次,压出折痕后展开,此时有三条折痕,从上到下依次是下折痕、下折痕和上折痕。
给定一个输入参数N,代表纸条都从下边向上方连续对折N次。 请从上到下打印所有折痕的方向。
例如:N=1时,打印: down N=2时,打印: down down up

思路:观察法

// 折叠n打印凹凸序列public static void p(int n){if (n ==0)System.out.println("");// 1 整个折痕个数 然后直接计算各个位置应该打印的字符串// 2 肯定是奇数个,从中间开始向两边赋值 每次赋值就是一层,有多少层(折叠多少次)遍历多少次int l = (int)Math.pow(2,n)-1;String[] a = new String[l];process(a,0,l-1,"凹");for (String s : a) {System.out.print(s+" ");}}// todo转换为非递归方式/*** 对二叉树先序遍历,将字符串放在所在范围的中间位置 观察法* @param a 存放数据的* @param start 整个数组开始位置* @param end 数组结束位置* @param str 当前节点应该打印的字符串*/public static void process(String[] a,int start ,int end,String str){if(start == end){a[start] = str;return;}// 计算当前应该放在的位置int m = (start+end)/2;a[m] = str;process(a,start,m-1,"凹");process(a,m+1,end,"凸");}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/692202.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LeetCode面试题 17.24. Max Submatrix LCCI——压缩数组+动态规划

文章目录 一、题目二、题解 一、题目 Given an NxM matrix of positive and negative integers, write code to find the submatrix with the largest possible sum. Return an array [r1, c1, r2, c2], where r1, c1 are the row number and the column number of the subma…

2.12:C语言测试题

1.段错误:str指向NULL,不能把"hello world" 复制给NULL 2.报错:返回局部变量,本函数结束,非法访问,不一定输出hello world 3.地址传递,修改str,正常输出hello 4.可以输出…

npm ERR! code CERT_HAS_EXPIRED:解决证书过期问题

转载:npm ERR! code CERT_HAS_EXPIRED:解决证书过期问题_npm err! code cert_has_expired npm err! errno cert-CSDN博客 npm config set registry http://registry.cnpmjs.org npm config set registry http://registry.npm.taobao.org

中国电子学会2023年12月真题C语言软件编程等级考试一级(含解析答案)

中国电子学会考评中心历届真题(含解析答案) C语言软件编程等级考试一级 2023年12月 编程题五道 总分:100分一、数的输入和输出(20分) 输入一个整数和双精度浮点数,先将浮点数保留2位小数输出,然后输出整数。 时间限制: 1000 内存限制: 65536 输入 一行两个数,分…

【Linux 02】权限基本概念

文章目录 🌈 Ⅰ 权限概念🌈 Ⅱ 权限管理1. 文件访问者分类 (角色)2. 文件类型和访问权限 (事物属性)3. 文件权限值表示方法 🌈 Ⅲ 权限修改1. chmod 设置文件访问权限2. chown 修改文件拥有者3. chgrp 修改文件或目录的所属组 🌈 …

【数据分享】2014-2024年全国监测站点的逐月空气质量数据(15个指标\免费获取)

空气质量的好坏反映了空气的污染程度,在各项涉及城市环境的研究中,空气质量都是一个十分重要的指标。空气质量是依据空气中污染物浓度的高低来判断的。 我们发现学者王晓磊在自己的主页里面分享了2014年5月以来的全国范围的到站点的逐时空气质量数据&am…

接口测试工具开发文档

1 开发规划 1.1 开发人员 角 色 主要职责 负责模块 人员 备注 n xxx模块 xxx 1.2 开发计划 <附开发计划表> 1.3 开发环境和工具 开发工具 工具 作用 Notepad 编辑器 Perl 解释器 2 总体设计 设计思路&#xff1a;因为测试app和server。首先必须…

[C#]winform基于opencvsharp结合pairlie算法实现低光图像增强黑暗图片变亮变清晰

【低光图像增强介绍】 在图像处理领域&#xff0c;低光图像增强是一个具有挑战性的任务。由于光线不足&#xff0c;这些图像往往呈现出低对比度、高噪声和细节丢失等问题&#xff0c;严重影响了图像的视觉效果和后续分析的准确性。因此&#xff0c;开发有效的低光图像增强方法…

WSL安装Ubuntu22.04,以及深度学习环境的搭建

安装WSL 安装 WSL 2 之前&#xff0c;必须启用“虚拟机平台”可选功能。 计算机需要虚拟化功能才能使用此功能。 以管理员身份打开 PowerShell 并运行&#xff1a; dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart下载 Linux 内核更…

初识ONLYOFFICE 8.0:办公软件的革命性升级

引言 随着数字化时代的到来&#xff0c;办公软件已经成为我们日常生活和工作的重要组成部分。在这个充满竞争的市场中&#xff0c;ONLYOFFICE凭借其卓越的性能和功能&#xff0c;脱颖而出&#xff0c;成为许多企业和个人用户的优选。近期&#xff0c;ONLYOFFICE推出了全新的8.…

大数据技术之 Kafka

大数据技术之 Kafka 文章目录 大数据技术之 Kafka第 1 章 Kafka 概述1.1 定义1.2 消息队列1.2.1 传统消息队列的应用场景1.2.2 消息队列的两种模式 1.3 Kafka 基础架构 第 2 章 Kafka 快速入门2.1 安装部署2.1.1 集群规划2.1.2 集群部署2.1.3 集群启停脚本 2.2 Kafka 命令行操作…

http前生今世

HTTP/0.9&#xff0c;仅支持GET方法&#xff0c;并且响应中没有HTTP头信息&#xff0c;只有文档内容。 HTTP/1.0增加了对POST方法、状态码、HTTP头信息等的支持&#xff0c;这一版本也是广泛应用的历史性版本。 HTTP/1.1引入了持久连接&#xff08;Persistent Connections&…

m_sAppWord.CreateDispatch((L“Kwps.Application“), NULL) 失败问题

不使用管理员身份运行软件&#xff0c;只有adminsitrator用户装了WPS&#xff0c;在adminsitrator用户下运行管理员身份运行的程序才能正确载入WPS&#xff0c;其他用户下装WPS&#xff0c;只能用普通用户身份运行程序才能正确载入WPS

schema: classpath:db/schema.sql 自动建表失败的另一个原因

一、问题产生 想在springboot启动时&#xff0c;自动创建数据库&#xff0c;并执行建表语句&#xff0c;和数据插入语句。于是按照帖子配置了 schema: classpath:db/schema.sql 然而启动时&#xff0c;确报如下错误&#xff1a; com.baomidou.dynamic.datasource.DynamicDataSo…

【洛谷题解】P1303 A*B Problem

题目链接&#xff1a;A*B Problem - 洛谷 题目难度&#xff1a;普及- 涉及知识点&#xff1a;高精度 题意&#xff1a; 分析&#xff1a;直接套用模版即可 AC代码&#xff1a; #include<bits/stdc.h> using namespace std; char n[1000000],m[1000000]; int a[1000…

MIT-BEVFusion系列九--CUDA-BEVFusion部署2 create_core之参数设置

目录 加载命令行参数main 函数中的 create_core图像归一化参数体素化参数稀疏卷积网络参数真实世界几何空间参数 (雷达坐标系下体素网格的参数)解码后边界框的参数构建 bevfusion::Core 存储推理时需要的参数 本章开始&#xff0c;我们将一起看CUDA-BEVFusion的代码流程&#x…

VirtualBox虚拟机磁盘VDI文件压缩瘦身

文章目录 问题现象虚拟机文件目录结构处理方法清除宿主机文件和虚拟机快照虚拟机磁盘瘦身 问题现象 2月7日下午四点多&#xff0c;我已经休假了&#xff0c;某县的客户运维方打来电话&#xff0c;说平台挂了&#xff0c;无法访问 客户是提供的一台Windows server2016机器部署平…

262.【华为OD机试真题】符号运算(中缀表达式转逆波兰表达式-JavaPythonC++JS实现)

🚀点击这里可直接跳转到本专栏,可查阅顶置最新的华为OD机试宝典~ 本专栏所有题目均包含优质解题思路,高质量解题代码(Java&Python&C++&JS分别实现),详细代码讲解,助你深入学习,深度掌握! 文章目录 一. 题目-符号运算二.解题思路三.题解代码Python题解代码…

AIOps探索 | 从单一告警管理到统一告警管理

原作者&#xff1a;擎创科技 资深产品专家 布博士 前言 最近发现我们的一些客户&#xff0c;仍在使用十多年前的流程和思想来思考业务和产品的未来。我们认为做产品必须明确该产品未来的业务发展方向&#xff0c;否则研发出的东西只是应对当前可见的需求&#xff08;即项目需求…

【教程】详解相机模型与坐标转换

转载请注明出处&#xff1a;小锋学长生活大爆炸[xfxuezhang.cn] 由于复制过来&#xff0c;如果有格式问题&#xff0c;推荐大家直接去我原网站上查看&#xff1a; 相机模型与坐标转换 - 生活大爆炸 目录 经纬度坐标系 转 地球直角坐标系大地直角坐标系 转 经纬度坐标系地理坐标…